.subscription-site-header.ui-floating-header { grid-template-columns: minmax(0, 1fr) auto; }
.subscription-page { width: min(calc(100% - 48px), var(--maj-content)); margin: 0 auto; padding: clamp(36px, 5vw, 64px) 0 72px; color: var(--maj-ink); font-family: var(--maj-font-body); }
.subscription-hero { max-width: 800px; margin: 0 auto 32px; text-align: center; }
.subscription-hero h1 { margin: 0; font-size: clamp(2rem, 4vw, 3.5rem); line-height: 1.08; }
.subscription-hero > p { max-width: 650px; margin: 18px auto 0; color: var(--maj-muted); font-size: 1rem; line-height: 1.6; }
.subscription-page .billing-cadence-selector { width: min(100%, 520px); margin: 0 auto 28px; }
.subscription-offers { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; align-items: stretch; }
.subscription-plan { display: flex; min-width: 0; padding: clamp(22px, 2.5vw, 32px); flex-direction: column; }
.subscription-plan-featured { border-color: var(--maj-terracotta); }
.subscription-plan-heading { display: flex; gap: 14px; align-items: center; margin-bottom: 24px; }
.subscription-plan-heading h2 { margin: 0; font-size: 1.75rem; }
.subscription-price { margin: 0; font-family: var(--maj-font-display); font-size: clamp(2.75rem, 3.5vw, 3.75rem); line-height: 1.1; letter-spacing: -.04em; }
.subscription-plan-duration { min-height: 42px; margin: 6px 0 0; color: var(--maj-muted); font-size: .875rem; line-height: 1.5; }
.subscription-plan ul { display: grid; gap: 12px; margin: 24px 0; padding: 24px 0 0; border-top: 1px solid var(--maj-line); list-style: none; }
.subscription-plan li { position: relative; padding-left: 24px; font-size: .9375rem; line-height: 1.5; }
.subscription-plan li::before { position: absolute; left: 0; color: var(--maj-sage-ink); content: "✓"; font-weight: 800; }
.subscription-plan-action { display: grid; gap: 12px; margin-top: auto; }
.subscription-plan-action form { display: grid; gap: 12px; width: 100%; }
.subscription-plan-action small { color: var(--maj-muted); font-size: .8125rem; line-height: 1.5; text-align: center; }
.subscription-contract-consents { display: grid; gap: 12px; padding: 16px; color: var(--maj-muted); font-size: .875rem; line-height: 1.5; }
.subscription-contract-consents label { display: grid; grid-template-columns: 18px minmax(0, 1fr); gap: 10px; align-items: start; cursor: pointer; }
.subscription-contract-consents input { width: 18px; height: 18px; margin: 2px 0 0; accent-color: var(--maj-terracotta); }
.subscription-contract-consents a { color: var(--maj-forest); text-underline-offset: .18em; }
.subscription-divider { margin: clamp(32px, 5vw, 54px) 0; }
.subscription-assurances { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.subscription-assurances article { padding: 24px; }
.subscription-assurance-heading { display: flex; align-items: center; gap: 14px; margin-bottom: 16px; }
.subscription-assurance-heading > .ui-icon-badge { flex: none; }
.subscription-assurances h2 { margin: 0; font-size: 1.125rem; }
.subscription-assurances p { margin: 0; color: var(--maj-muted); font-size: .9375rem; line-height: 1.6; }
.subscription-context { display: grid; gap: 6px; max-width: 800px; margin: 0 auto 28px; text-align: left; }
.subscription-context strong { font-size: 1rem; }
.subscription-context span, .subscription-confirmation-progress { font-size: .9375rem; line-height: 1.5; }
.subscription-context small { color: var(--maj-muted); font-size: .8125rem; }
.subscription-context[data-tone="warning"] { border-color: var(--maj-terracotta); }
.subscription-context[data-tone="positive"] { background: var(--maj-mint-light); }
.subscription-confirmation-progress { margin: 0; }
@media (min-width: 1200px) {
  .subscription-offers { grid-template-rows: auto auto auto 1fr auto auto; row-gap: 0; }
  .subscription-plan { display: grid; grid-row: span 6; grid-template-rows: subgrid; }
  .subscription-plan ul { align-self: start; }
  .subscription-plan-action { grid-row: span 2; grid-template-rows: subgrid; margin-top: 0; }
  .subscription-plan-action > :first-child { align-self: end; }
  .subscription-plan-action > small { margin-top: 12px; }
}
@media (max-width: 1199px) {
  .subscription-offers { max-width: 740px; margin-inline: auto; grid-template-columns: 1fr; }
  .subscription-plan ul { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 24px; }
  .subscription-assurances { max-width: 740px; margin-inline: auto; grid-template-columns: 1fr; }
}
@media (max-width: 767px) {
  .subscription-page { width: calc(100% - 28px); padding-bottom: 48px; }
  .subscription-site-header .ui-brand__name, .subscription-site-header .ui-access-status { display: none; }
  .subscription-site-header .ui-brand { min-width: 40px; }
  .subscription-site-header .ui-header-actions { gap: 8px; }
  .subscription-back { max-width: 170px; font-size: .8125rem; padding-inline: 12px; }
  .subscription-site-header .ui-admin-tools { display: none; }
  .subscription-plan ul { grid-template-columns: 1fr; }
}
