/* Pricing routes · Springcast Design System 1.0.0. */
.pricing-page {
  font-family: var(--sc-font-body);
  background: var(--sc-bg-canvas);
}

.pricing-page .tnv { max-width: 1376px; }
.pricing-landing { color: var(--sc-fg); }
.pricing-landing *,
.pricing-landing *::before,
.pricing-landing *::after { box-sizing: border-box; }
.pricing-landing [hidden] { display: none !important; }
.pricing-landing h1,
.pricing-landing h2,
.pricing-landing h3 {
  margin: 0;
  color: var(--sc-fg-heading);
  font-family: var(--sc-font-display);
  font-weight: var(--sc-font-weight-display);
  letter-spacing: var(--sc-tracking-display);
  text-wrap: balance;
}
.pricing-landing h2 { font-size: var(--sc-text-h2); line-height: var(--sc-lh-heading); }
.pricing-landing h3 { font-size: var(--sc-text-h4); line-height: var(--sc-lh-heading); }
.pricing-landing p { margin: 0; }
.pricing-landing button,
.pricing-landing input { font: inherit; }
.pricing-landing a,
.pricing-landing button,
.pricing-landing summary { -webkit-tap-highlight-color: transparent; }
.pricing-landing :focus-visible {
  outline: var(--sc-focus-width) solid var(--sc-focus-ring);
  outline-offset: var(--sc-focus-offset);
}
.pricing-landing a:not(.pr-button) { color: var(--sc-fg-link); text-underline-offset: 4px; }
.pricing-landing a:not(.pr-button):hover { color: var(--sc-fg-link-hover); }
.pricing-landing :is(p, li, td, th) { overflow-wrap: anywhere; }
.pr-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.pr-wrap {
  width: min(var(--sc-layout-marketing-max), calc(100% - var(--sc-layout-gutter) * 2));
  margin-inline: auto;
}
.pr-section { padding-block: var(--sc-layout-section); }
.pricing-landing section[id] { scroll-margin-top: 96px; }
.pricing-landing .pr-kicker,
.pricing-landing .pr-plan-label {
  color: var(--sc-fg-link);
  font: var(--sc-font-weight-medium) var(--sc-text-label)/var(--sc-lh-mono) var(--sc-font-mono);
  letter-spacing: var(--sc-tracking-label);
  text-transform: uppercase;
}
.pricing-landing .pr-kicker { margin-bottom: var(--sc-space-3); }
.pr-arrow { display: inline-block; flex-shrink: 0; font-size: 1.125em; line-height: 1; }
.pr-text-link { display: inline-flex; align-items: center; gap: var(--sc-space-3); min-height: 44px; margin-top: var(--sc-space-4); font-size: var(--sc-text-body-sm); font-weight: var(--sc-font-weight-semibold); }
.pr-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--sc-space-4);
  min-height: var(--sc-control-height);
  max-width: 100%;
  padding: var(--sc-space-3) var(--sc-space-5);
  border: var(--sc-border-width) solid transparent;
  border-radius: var(--sc-radius-md);
  background: var(--sc-action-primary-bg);
  color: var(--sc-action-primary-fg);
  font-size: var(--sc-text-body-sm);
  font-weight: var(--sc-font-weight-semibold);
  line-height: var(--sc-lh-ui);
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  transition: background-color var(--sc-duration-fast), color var(--sc-duration-fast);
}
.pr-button:hover { background: var(--sc-action-primary-hover-bg); color: var(--sc-action-primary-hover-fg); }
.pr-button:active { background: var(--sc-action-primary-active-bg); color: var(--sc-action-primary-active-fg); }
.pr-button--secondary {
  border-color: var(--sc-border-selected);
  background: var(--sc-action-secondary-bg);
  color: var(--sc-action-secondary-fg);
}
.pr-button--secondary:hover { background: var(--sc-action-secondary-hover-bg); color: var(--sc-action-secondary-hover-fg); }
.pr-button--secondary:active { background: var(--sc-action-secondary-active-bg); color: var(--sc-action-secondary-active-fg); }

/* The audience choice leads into an organization-first commercial journey. */
.pr-hero { padding-block: var(--sc-space-6); }
.pr-hero-top {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: var(--sc-space-7);
  margin-bottom: var(--sc-space-6);
}
.pr-heading { min-width: 0; }
.pr-heading h1 { font-size: var(--sc-text-display); line-height: var(--sc-lh-display); }
.pr-heading-dot { color: var(--sc-fg-link); }
.pr-heading > p:not(.pr-kicker) {
  max-width: 60ch;
  margin-top: var(--sc-space-4);
  color: var(--sc-fg-muted);
  font-size: var(--sc-text-body);
  line-height: var(--sc-lh-body);
}
.pr-trial-proof {
  display: flex;
  align-items: center;
  gap: var(--sc-space-4);
  flex: 0 0 auto;
  padding-inline-start: var(--sc-space-5);
  border-inline-start: var(--sc-border-width) solid var(--sc-border);
  color: var(--sc-fg-muted);
  font-size: var(--sc-text-body-sm);
  line-height: var(--sc-lh-body);
}
.pr-trial-proof strong { color: var(--sc-fg-heading); font-weight: var(--sc-font-weight-semibold); }
.pr-trial-proof > div > * { display: block; }
.pr-trial-proof .pr-proof-number {
  display: flex;
  align-items: baseline;
  gap: var(--sc-space-2);
  color: var(--sc-fg-link);
  font: var(--sc-font-weight-display) var(--sc-text-h3)/1 var(--sc-font-display);
  letter-spacing: var(--sc-tracking-display);
}
.pr-proof-number > span { color: var(--sc-fg-muted); font: var(--sc-font-weight-regular) var(--sc-text-label)/var(--sc-lh-ui) var(--sc-font-body); letter-spacing: 0; }
.pr-plan-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sc-space-5); }
@media (min-width: 768px) {
  .pr-plan-grid { grid-template-rows: repeat(7, auto); row-gap: 0; }
  .pr-plan-grid .pr-plan { display: grid; grid-row: span 7; grid-template-rows: subgrid; }
  .pr-plan-features { align-content: start; }
}
.pr-plan {
  position: relative;
  min-width: 0;
  padding: var(--sc-space-6);
  border: var(--sc-border-width) solid var(--sc-border);
  border-radius: var(--sc-radius-lg);
  background: var(--sc-bg-canvas);
}
.pr-plan--featured {
  border-color: var(--sc-border-selected);
  box-shadow: inset 0 var(--sc-space-1) 0 var(--sc-border-selected), var(--sc-shadow-elevated);
}
.pricing-landing .pr-plan-label { color: var(--sc-fg-muted); }
.pr-plan--featured .pr-plan-label { color: var(--sc-fg-link); }
.pricing-landing .pr-plan-title,
.pr-plan-title h2 { margin-top: var(--sc-space-2); font-size: var(--sc-text-h3); line-height: var(--sc-lh-heading); }
.pricing-landing .pr-plan-description {
  min-height: 3.2em;
  margin-top: var(--sc-space-3);
  color: var(--sc-fg-muted);
  font-size: var(--sc-text-body-sm);
  line-height: var(--sc-lh-body);
}
.pricing-landing .pr-price { display: flex; align-items: baseline; gap: var(--sc-space-2); margin-top: var(--sc-space-5); }
.pr-price strong {
  color: var(--sc-fg-heading);
  font: var(--sc-font-weight-display) var(--sc-text-display)/var(--sc-lh-display) var(--sc-font-display);
  letter-spacing: -.04em;
  font-variant-numeric: tabular-nums;
}
.pr-price > span { color: var(--sc-fg-muted); font-size: var(--sc-text-body-sm); }
.pricing-landing .pr-tax { margin-top: var(--sc-space-2); color: var(--sc-fg-muted); font-size: var(--sc-text-label); }
.pr-plan > .pr-button { width: 100%; margin-top: var(--sc-space-4); }
.pr-plan-features {
  display: grid;
  gap: var(--sc-space-3);
  margin: var(--sc-space-5) 0 0;
  padding: var(--sc-space-5) 0 0;
  border-top: var(--sc-border-width) solid var(--sc-border);
  list-style: none;
}
.pr-plan-features li { position: relative; padding-inline-start: var(--sc-space-5); font-size: var(--sc-text-body-sm); line-height: var(--sc-lh-body); }
.pr-plan-features li::before { content: '✓'; position: absolute; inset-inline-start: 0; color: var(--sc-fg-accent); font-weight: var(--sc-font-weight-semibold); }
.pr-plan-features strong { font-weight: var(--sc-font-weight-semibold); }
.pr-terms {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: var(--sc-space-2) var(--sc-space-5);
  margin-top: var(--sc-space-5);
  color: var(--sc-fg-muted);
  font-size: var(--sc-text-body-sm);
  line-height: var(--sc-lh-body);
}
.pr-terms a { display: inline-flex; align-items: center; gap: var(--sc-space-2); min-height: 44px; font-weight: var(--sc-font-weight-semibold); }
.pr-included-bar {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--sc-space-3) var(--sc-space-6);
  margin-top: var(--sc-space-5);
  padding-block: var(--sc-space-5);
  border-top: var(--sc-border-width) solid var(--sc-border);
  color: var(--sc-fg-muted);
  font-size: var(--sc-text-body-sm);
  line-height: var(--sc-lh-body);
  list-style: none;
  padding-inline: 0;
}
.pr-included-bar > * { display: inline-flex; align-items: baseline; gap: var(--sc-space-2); }
.pr-included-bar > * > span { color: var(--sc-fg-accent); font-weight: var(--sc-font-weight-semibold); }

.pr-proof-strip { padding-block: var(--sc-space-6); border-bottom: var(--sc-border-width) solid var(--sc-border); }
.pr-proof-strip > .pr-wrap { display: flex; align-items: center; gap: var(--sc-space-7); }
.pr-proof-strip .pr-wrap > p { flex: 0 0 20ch; color: var(--sc-fg-muted); font-size: var(--sc-text-body-sm); line-height: var(--sc-lh-body); }
.pr-logos { display: flex; align-items: center; justify-content: space-between; flex: 1; min-width: 0; gap: var(--sc-space-5); }
.pr-logos img { display: block; width: 90px; height: 32px; max-width: 100%; object-fit: contain; }

.pr-section-heading { max-width: 66ch; margin-bottom: var(--sc-space-6); }
.pr-section-heading > p:not(.pr-kicker) { margin-top: var(--sc-space-4); color: var(--sc-fg-muted); font-size: var(--sc-text-body); line-height: var(--sc-lh-body); }
.pr-compare-toolbar { display: flex; align-items: flex-end; justify-content: space-between; gap: var(--sc-space-6); margin-bottom: var(--sc-space-6); }
.pr-compare-toolbar .pr-section-heading { margin-bottom: 0; }
.pr-compare-toolbar label {
  display: inline-flex;
  align-items: center;
  gap: var(--sc-space-3);
  flex-shrink: 0;
  min-height: 44px;
  color: var(--sc-fg);
  font-size: var(--sc-text-body-sm);
  cursor: pointer;
}
.pr-compare-toolbar input[type='checkbox'] { width: 18px; height: 18px; accent-color: var(--sc-bg-brand); flex-shrink: 0; }
.pr-mobile-hint { display: none; }
.pr-category-note { margin-inline-start: auto; color: var(--sc-fg-muted); font-size: var(--sc-text-body-sm); font-weight: var(--sc-font-weight-regular); }
.pr-compare { border-top: var(--sc-border-width) solid var(--sc-border); }
.pr-compare > details { border-bottom: var(--sc-border-width) solid var(--sc-border); }
.pr-compare summary,
.pr-faq-list summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--sc-space-5);
  min-height: var(--sc-control-height);
  padding-block: var(--sc-space-5);
  color: var(--sc-fg-heading);
  font-size: var(--sc-text-body);
  font-weight: var(--sc-font-weight-semibold);
  line-height: var(--sc-lh-ui);
  list-style: none;
  cursor: pointer;
}
.pr-compare summary::-webkit-details-marker,
.pr-faq-list summary::-webkit-details-marker { display: none; }
.pr-compare summary::after,
.pr-faq-list summary::after { content: '+'; flex-shrink: 0; color: var(--sc-fg-link); font-size: var(--sc-text-h4); font-weight: var(--sc-font-weight-regular); }
.pr-compare details[open] > summary::after,
.pr-faq-list details[open] > summary::after { content: '−'; }
.pr-compare summary:hover,
.pr-faq-list summary:hover { color: var(--sc-fg-link); }
.pr-table-scroll { max-width: 100%; overflow-x: auto; overscroll-behavior-inline: contain; margin-bottom: var(--sc-space-5); border-radius: var(--sc-radius-sm); }
.pr-table-scroll table { width: 100%; min-width: 620px; table-layout: fixed; border-collapse: separate; border-spacing: 0; font-size: var(--sc-text-body-sm); line-height: var(--sc-lh-body); }
.pr-table-scroll th,
.pr-table-scroll td { width: 22%; padding: var(--sc-space-4); border-bottom: var(--sc-border-width) solid var(--sc-border); text-align: center; vertical-align: middle; background: var(--sc-bg-canvas); }
.pr-table-scroll thead th { color: var(--sc-fg-heading); background: var(--sc-bg-subtle); font-weight: var(--sc-font-weight-semibold); }
.pr-table-scroll th:first-child,
.pr-table-scroll td:first-child { position: sticky; inset-inline-start: 0; z-index: 1; width: 34%; text-align: start; font-weight: var(--sc-font-weight-medium); }
.pr-table-scroll thead th:first-child { z-index: 2; }
.pr-table-scroll tbody tr:last-child > * { border-bottom: 0; }
.pr-compare .pr-cell-featured { background: var(--sc-bg-selected); }
.pr-table-scroll th small,
.pr-table-scroll td small { display: block; margin-top: var(--sc-space-1); color: var(--sc-fg-muted); font-size: var(--sc-text-label); font-weight: var(--sc-font-weight-regular); }
.pr-table-check { color: var(--sc-fg-accent); font-weight: var(--sc-font-weight-semibold); }
.pr-table-note { margin-top: var(--sc-space-5) !important; color: var(--sc-fg-muted); font-size: var(--sc-text-body-sm); }
.pr-table-notes { display: grid; gap: var(--sc-space-2); max-width: 90ch; margin-top: var(--sc-space-5); color: var(--sc-fg-muted); font-size: var(--sc-text-label); line-height: var(--sc-lh-body); }

.pr-quote-section { padding-block: var(--sc-layout-section); background: var(--sc-bg-subtle); }
.pr-quote { max-width: 58rem; margin: 0 auto; text-align: center; }
.pr-quote blockquote { margin: 0; color: var(--sc-fg-heading); font: var(--sc-font-weight-medium) var(--sc-text-h3)/1.4 var(--sc-font-display); letter-spacing: var(--sc-tracking-display); text-wrap: pretty; }
.pr-quote figcaption { display: flex; align-items: center; justify-content: center; gap: var(--sc-space-3); margin-top: var(--sc-space-5); color: var(--sc-fg-muted); font-size: var(--sc-text-body-sm); line-height: var(--sc-lh-body); text-align: start; }
.pr-quote figcaption img { flex-shrink: 0; width: 48px; height: 48px; object-fit: cover; border-radius: var(--sc-radius-full); }
.pr-quote figcaption strong { display: block; color: var(--sc-fg-heading); font-weight: var(--sc-font-weight-semibold); }
.pr-faq { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: var(--sc-space-9); }
.pr-faq-intro h2 { max-width: 16ch; }
.pr-faq-intro > p:not(.pr-kicker) { max-width: 35ch; margin-top: var(--sc-space-4); color: var(--sc-fg-muted); line-height: var(--sc-lh-body); }
.pr-faq-intro > .pr-button { margin-top: var(--sc-space-5); }
.pr-faq-list { min-width: 0; border-top: var(--sc-border-width) solid var(--sc-border); }
.pr-faq-list details { border-bottom: var(--sc-border-width) solid var(--sc-border); }
.pr-faq-list details > p,
.pr-faq-list details > div { padding-block: 0 var(--sc-space-5); color: var(--sc-fg-muted); font-size: var(--sc-text-body-sm); line-height: 1.7; }
.pr-faq-list details p + p { margin-top: var(--sc-space-3); }
.pr-final { background: var(--sc-bg-brand); color: var(--sc-fg-on-brand); padding-block: var(--sc-layout-section); }
.pr-final-grid { display: flex; align-items: center; justify-content: space-between; gap: var(--sc-space-7); }
.pr-final h2 { max-width: 22ch; color: var(--sc-fg-on-brand); }
.pr-final p { max-width: 55ch; margin-top: var(--sc-space-4); color: var(--sc-fg-on-brand-muted); line-height: var(--sc-lh-body); }
.pr-final .pr-kicker { color: var(--sc-fg-on-brand-muted); }
.pr-final-grid > .pr-button { flex-shrink: 0; }
.pr-final-grid > div:last-child:not(:first-child) { flex-shrink: 0; }
.pr-final .pr-final-note { margin-top: var(--sc-space-3); font-size: var(--sc-text-label); text-align: center; }
.pr-final :focus-visible { outline-color: var(--sc-focus-ring-inverse); }
.pr-final .pr-button--secondary { color: var(--sc-fg-on-brand); border-color: var(--sc-fg-on-brand); background: transparent; }
.pr-final .pr-button--secondary:hover { color: var(--sc-action-secondary-hover-fg); background: var(--sc-action-secondary-hover-bg); }


.pr-hero { padding-bottom: var(--sc-space-5); }
.pr-company-card { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(0, 1fr); overflow: hidden; border: var(--sc-border-width) solid var(--sc-border-selected); border-radius: var(--sc-radius-lg); }
.pr-company-story { padding: var(--sc-space-7); background: var(--sc-bg-brand); color: var(--sc-fg-on-brand); }
.pr-company-story .pr-kicker { color: var(--sc-fg-on-brand); opacity: .8; }
.pr-company-story h2 { max-width: 22ch; color: var(--sc-fg-on-brand); font-size: var(--sc-text-h2); }
.pr-company-story > p:not(.pr-kicker) { max-width: 56ch; margin-top: var(--sc-space-4); font-size: var(--sc-text-body); line-height: var(--sc-lh-body); }
.pr-company-basics { display: grid; gap: var(--sc-space-3); padding: 0; margin: var(--sc-space-6) 0 0; list-style: none; font-size: var(--sc-text-body-sm); line-height: var(--sc-lh-body); }
.pr-company-basics li { position: relative; padding-left: var(--sc-space-5); }
.pr-company-basics li small { display: block; margin-top: var(--sc-space-1); font-size: var(--sc-text-label); line-height: var(--sc-lh-body); }
.pr-company-basics li strong { font-weight: var(--sc-font-weight-semibold); }
.pr-company-basics li::before { content: '✓'; position: absolute; left: 0; color: var(--sc-fg-on-brand); }
.pr-company-offer { align-self: center; padding: var(--sc-space-7); }
.pr-company-offer .pr-offer-label { font-size: var(--sc-text-body-sm); color: var(--sc-fg-muted); line-height: var(--sc-lh-body); }
.pr-company-offer .pr-company-price { margin-top: var(--sc-space-3); color: var(--sc-fg-heading); font: var(--sc-font-weight-display) var(--sc-text-h2)/var(--sc-lh-heading) var(--sc-font-display); letter-spacing: var(--sc-tracking-display); }
.pr-company-offer > p:not(.pr-offer-label, .pr-company-price, .pr-company-term) { margin-top: var(--sc-space-4); color: var(--sc-fg-muted); font-size: var(--sc-text-body-sm); line-height: var(--sc-lh-body); }
.pr-company-offer .pr-button { width: 100%; margin-top: var(--sc-space-5); }
.pr-company-offer .pr-company-term { margin-top: var(--sc-space-3); color: var(--sc-fg-muted); font-size: var(--sc-text-label); text-align: center; }
.pr-company-context { padding-block: var(--sc-space-4); color: var(--sc-fg-muted); font-size: var(--sc-text-label); line-height: var(--sc-lh-body); }
.pr-company-scope { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--sc-space-6); }
.pr-company-scope article { padding-top: var(--sc-space-5); border-top: var(--sc-border-width) solid var(--sc-border); }
.pr-company-scope article:first-child { border-top: 3px solid var(--sc-action-primary-bg); }
.pr-scope-number { display: block; margin-bottom: var(--sc-space-5); color: var(--sc-fg-link); font: var(--sc-font-weight-medium) var(--sc-text-label)/var(--sc-lh-mono) var(--sc-font-mono); }
.pr-company-scope h3 { max-width: 23ch; }
.pr-company-scope p { margin-top: var(--sc-space-4); color: var(--sc-fg-muted); font-size: var(--sc-text-body-sm); line-height: var(--sc-lh-body); }
.pr-company-faq { background: var(--sc-bg-subtle); }
.pr-creator-heading { display: flex; align-items: center; justify-content: space-between; gap: var(--sc-space-5); margin-bottom: var(--sc-space-5); }
.pr-creator-heading h2 { font-size: var(--sc-text-h3); }
.pr-creator-heading > div > p:not(.pr-kicker) { color: var(--sc-fg-muted); margin-top: var(--sc-space-3); font-size: var(--sc-text-body-sm); line-height: var(--sc-lh-body); }
.pr-creator-org-link { padding-bottom: var(--sc-space-5); color: var(--sc-fg-muted); font-size: var(--sc-text-body-sm); line-height: var(--sc-lh-body); text-align: center; }

@media (max-width: 1279px) {
  .pricing-page .tnv { gap: var(--sc-space-4); }
  .pricing-page .tnv__org { display: none; }
  .pr-plan { padding: var(--sc-space-5); }
  .pr-proof-strip > .pr-wrap { gap: var(--sc-space-6); }
  .pr-logos { gap: var(--sc-space-4); }
}

@media (max-width: 1023px) {
  .pr-company-story, .pr-company-offer { padding: var(--sc-space-5); }
  .pr-company-scope { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sc-space-6); }

  .pr-hero-top { align-items: flex-start; gap: var(--sc-space-5); }
  .pr-trial-proof { max-width: 24ch; }
  .pr-plan-grid { gap: var(--sc-space-4); }
  .pr-plan { padding: var(--sc-space-5) var(--sc-space-4); }
    .pr-plan > .pr-button { padding-inline: var(--sc-space-3); gap: var(--sc-space-2); }
  .pr-proof-strip > .pr-wrap { flex-direction: column; gap: var(--sc-space-5); }
  .pr-proof-strip .pr-wrap > p { flex-basis: auto; text-align: center; }
  .pr-logos { width: 100%; flex-wrap: wrap; justify-content: center; gap: var(--sc-space-5) var(--sc-space-7); }
  .pr-faq { grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: var(--sc-space-7); }
}

@media (max-width: 767px) {
  .pr-company-card, .pr-company-scope { grid-template-columns: minmax(0, 1fr); }
  .pr-company-story, .pr-company-offer { padding: var(--sc-space-5); }
  .pr-company-offer { grid-row: 1; }
  .pr-company-story h2 { font-size: var(--sc-text-h3); }
  .pr-company-basics { margin-top: var(--sc-space-5); }
  .pr-company-scope { gap: var(--sc-space-6); }
  .pr-company-scope h3 { max-width: none; }
  .pr-scope-number { margin-bottom: var(--sc-space-3); }
  .pr-creator-heading { display: block; }
  .pr-creator-heading .pr-trial-proof { margin-top: var(--sc-space-4); }

  .pricing-page .tnv { padding-inline: 20px; gap: var(--sc-space-3); }
  .pricing-page .tnv__brand-logo { height: 36px; }
  .pricing-page .tnv__right { gap: var(--sc-space-2); }
  .pr-hero { padding-block: var(--sc-space-6) var(--sc-space-5); }
  .pr-hero-top { display: block; margin-bottom: var(--sc-space-6); }
  .pr-heading h1 { font-size: clamp(2.25rem, 8vw, 3rem); }
  .pr-heading > p:not(.pr-kicker) { margin-top: var(--sc-space-3); }
  .pr-trial-proof { max-width: none; margin-top: var(--sc-space-5); padding-inline-start: 0; border-inline-start: 0; }
  .pr-trial-proof .pr-proof-number { font-size: var(--sc-text-h4); }
  .pr-plan-grid { grid-template-columns: minmax(0, 1fr); gap: var(--sc-space-5); }
  .pr-plan { padding: var(--sc-space-5); }
  .pr-plan-description { min-height: 0 !important; }
    .pricing-landing .pr-price { margin-top: var(--sc-space-5); }
  .pr-plan > .pr-button { padding-inline: var(--sc-space-5); }
  .pr-terms { align-items: flex-start; gap: var(--sc-space-2); }
  .pr-included-bar { display: grid; justify-content: start; gap: var(--sc-space-3); margin-top: var(--sc-space-4); }

  .pr-proof-strip { padding-block: var(--sc-space-6); }
  .pr-logos { gap: var(--sc-space-5); }
  .pr-logos img { width: 80px; height: 30px; }
  .pr-section-heading { margin-bottom: var(--sc-space-5); }
  .pr-compare-toolbar { display: block; margin-bottom: var(--sc-space-4); }
  .pr-compare-toolbar label { margin-top: var(--sc-space-4); }
  .pr-mobile-hint { display: block; margin-bottom: var(--sc-space-3) !important; color: var(--sc-fg-muted); font-size: var(--sc-text-label); line-height: var(--sc-lh-body); }
  .pr-category-note { display: none; }
  .pr-compare summary,
  .pr-faq-list summary { padding-block: var(--sc-space-5); font-size: var(--sc-text-body-sm); }
  .pr-table-scroll th,
  .pr-table-scroll td { padding: var(--sc-space-3); }
  .pr-table-scroll th:first-child,
  .pr-table-scroll td:first-child { width: 28%; box-shadow: 1px 0 0 var(--sc-border); }
  .pr-faq { grid-template-columns: minmax(0, 1fr); gap: var(--sc-space-6); }
  .pr-faq-intro h2 { max-width: none; }
  .pr-faq-intro > p:not(.pr-kicker) { max-width: 55ch; }
  .pr-final-grid { display: block; }
  .pr-final h2 { max-width: 20ch; }
  .pr-final-grid > .pr-button,
  .pr-final-grid > div:last-child:not(:first-child) { margin-top: var(--sc-space-5); }
}

@media (max-width: 359px) {
  .pricing-page .tnv { gap: var(--sc-space-2); }
  .pricing-page .tnv__brand-logo { height: 32px; }
  .pricing-page .tnv__right .nbtn--primary { padding-inline: 10px; font-size: var(--sc-text-label); }
  .pr-plan { padding-inline: var(--sc-space-4); }
  .pr-plan-label { letter-spacing: .06em !important; }
}

@media (prefers-reduced-motion: reduce) {
  .pricing-landing *,
  .pricing-landing *::before,
  .pricing-landing *::after { transition: none !important; scroll-behavior: auto !important; }
}

/* Separate overview, Company and Creator compositions. */
.route-intro { padding-block:48px 36px }
.route-intro h1 { font-size:var(--sc-text-display); line-height:1.06; max-width:23ch }
.route-intro .pr-intro { margin-top:18px; font-size:17px; line-height:1.7; color:var(--sc-fg-muted); max-width:60ch }
.route-crumbs { display:flex; align-items:center; flex-wrap:wrap; gap:10px; margin-bottom:22px; font-size:12px; color:var(--sc-fg-muted) }
.route-crumbs a { color:inherit }
.route-overview .route-intro { text-align:center; padding-block:56px 36px }
.route-overview .route-intro h1 { margin:auto; max-width:none }
.route-overview .route-intro .pr-intro { margin:17px auto 0 }
.route-choices { display:grid; grid-template-columns:1.4fr 1fr; gap:24px; padding-bottom:48px }
.route-choice { padding:36px 40px; display:flex; flex-direction:column; border-radius:var(--sc-radius-lg); border:1px solid var(--sc-border); min-width:0 }
.route-choice h2 { font-size:34px; line-height:1.1; max-width:19ch }
.route-choice>p:not(.pr-kicker) { font-size:15px; line-height:1.7; margin-top:18px; max-width:47ch }
.route-choice-org { background:var(--sc-bg-brand); color:var(--sc-fg-on-brand); border-color:var(--sc-bg-brand) }
.route-choice-org h2, .route-choice-org .pr-kicker { color:var(--sc-fg-on-brand) }
.route-choice-org>p:not(.pr-kicker) { color:var(--sc-fg-on-brand-muted) }
.route-choice ul { list-style:none; margin:25px 0 28px; padding:0; display:grid; gap:10px; font-size:14px; line-height:1.6 }
.route-choice li { display:flex; gap:12px }
.route-choice li::before { content:"✓"; font-weight:600 }
.route-choice-org li::before { color:var(--sc-palette-ember-300) }
.route-choice-maker { background:var(--sc-bg-subtle) }
.route-choice-maker .pr-kicker { color:var(--sc-fg-link) }
.route-choice-maker>p:not(.pr-kicker) { color:var(--sc-fg-muted) }
.route-choice-maker li::before { color:var(--sc-fg-accent) }
.route-choice .pr-button { align-self:flex-start; margin-top:auto }
.route-choice .route-choice-note { margin:12px 0 0!important; font-size:12px!important; line-height:1.5!important }
.route-fit { display:flex; align-items:center; gap:24px; justify-content:space-between; padding-block:32px; border-top:1px solid var(--sc-border); margin-bottom:48px }
.route-fit h2 { font-size:24px }
.route-fit p { max-width:62ch; font-size:14px; line-height:1.7; color:var(--sc-fg-muted); margin-top:9px }
.route-fit>a { font-size:14px; flex-shrink:0; font-weight:600 }
.route-makers .route-intro { padding-bottom:30px }
.route-maker-heading { display:flex; align-items:end; gap:32px; justify-content:space-between }
.route-maker-heading .pr-trial-proof { margin-bottom:4px }
.route-makers .pr-plan-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; grid-template-rows:none; align-items:stretch }
.route-makers .pr-plan-grid .pr-plan { display:flex; flex-direction:column; grid-row:auto; padding:30px 26px; border-radius:var(--sc-radius-lg) }
.route-makers .pr-plan--featured { border:2px solid var(--sc-border-selected); background:var(--sc-bg-canvas); box-shadow:0 5px 0 var(--sc-bg-selected); padding:29px 25px!important }
.route-makers .pr-plan-label { font-size:11px; letter-spacing:.065em; min-height:18px }
.route-makers .pr-plan--featured .pr-plan-label { font-weight:700 }
.route-makers .pr-plan-description { font-size:14px; line-height:1.6; min-height:68px; margin:12px 0 20px }
.route-makers .pr-price { margin:0 }
.route-makers .pr-price strong { font-size:48px }
.route-makers .pr-tax { margin-block:7px 21px }
.route-makers .pr-plan-features { margin-top:25px; padding-top:24px; border-top:1px solid var(--sc-border); gap:12px; font-size:14px }
.route-makers .pr-plan .pr-button { font-size:13px; gap:12px; padding-inline:14px; min-height:48px }
.route-makers .pr-plan-title { font-size:26px }
.route-makers .pr-plan--essential { border:1px solid var(--sc-border-control) }
.route-maker-note { padding-block:16px 30px; color:var(--sc-fg-muted); font-size:12px; line-height:1.7 }
.route-company .route-intro { padding-block:34px 28px }
.route-company .pr-company-section { padding-bottom:0 }
.route-company .pr-company-story h2 { font-size:32px }
.route-company .route-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px }
.route-company .route-steps article { padding:24px 0; border-top:1px solid var(--sc-border) }
.route-company .route-steps p { margin-top:12px; color:var(--sc-fg-muted); font-size:15px; line-height:1.7 }
@media(max-width:1100px) {
  .route-choices { gap:18px }
  .route-choice { padding:30px }
  .route-makers .pr-plan-grid { gap:14px }
  .route-makers .pr-plan-grid .pr-plan { padding:24px 19px }
  .route-makers .pr-plan--featured { padding:23px 18px!important }
  .route-makers .pr-plan-label { font-size:10px }
  .route-makers .pr-plan-description { min-height:91px }
  .route-makers .pr-plan .pr-button { padding-inline:9px; font-size:12px }
  .route-makers .pr-plan-features { font-size:13px }
}
@media(max-width:767px) {
  .route-intro, .route-overview .route-intro { padding-block:34px 28px; text-align:start }
  .route-overview .route-intro h1 { margin:0; font-size:38px }
  .route-overview .route-intro .pr-intro { margin:16px 0 0 }
  .route-intro h1 { font-size:38px }
  .route-intro .pr-intro { font-size:16px }
  .route-choices { grid-template-columns:1fr; gap:20px; padding-bottom:32px }
  .route-choice { padding:28px }
  .route-choice h2 { font-size:30px }
  .route-choice .pr-button { width:100% }
  .route-fit { display:block; margin-bottom:28px; padding-block:28px }
  .route-fit>a { display:inline-flex; padding-top:16px }
  .route-maker-heading { display:block }
  .route-maker-heading .pr-trial-proof { padding:16px 0 0; border:0; gap:12px }
  .route-maker-heading .pr-proof-number { font-size:35px }
  .route-makers .pr-plan-grid { grid-template-columns:1fr; gap:20px }
  .route-makers .pr-plan-grid .pr-plan { padding:26px }
  .route-makers .pr-plan--featured { padding:25px!important }
  .route-makers .pr-plan-description { min-height:0; max-width:38ch }
  .route-makers .pr-plan-label { font-size:11px }
  .route-makers .pr-plan .pr-button { font-size:14px }
  .route-makers .pr-plan-features { font-size:14px }
  .route-company .route-steps { grid-template-columns:1fr }
}
.route-budget-steps { grid-template-columns:repeat(3,minmax(0,1fr)) }
.route-crosslink { padding-block:24px; text-align:center }
@media(max-width:767px) {
  .route-budget-steps { grid-template-columns:1fr }
}

/* Inline route links remain distinguishable without relying on colour. */
.pricing-landing a[data-pricing-placement="crosslink"] { text-decoration: underline; }
