.pricing-page { min-height:100vh; color:var(--sc-color-ink); background:var(--sc-color-canvas); }
.pricing-loading-status { min-height:1.5em; margin:0 auto var(--sc-space-4); padding-inline:var(--sc-space-4); color:var(--sc-color-muted); text-align:center; font-size:var(--sc-font-size-sm); }
.pricing-card[data-loading-state="loading"] :is(.pricing-card__price,.pricing-credit-bar,.pricing-card__estimates), .pricing-compare__scroll[data-loading-state="loading"] :is([data-compare-price],[data-credit-tier]) { position:relative; color:transparent!important; }
.pricing-card[data-loading-state="loading"] :is(.pricing-card__price,.pricing-credit-bar,.pricing-card__estimates) > * { visibility:hidden; }
.pricing-card[data-loading-state="loading"] :is(.pricing-card__price,.pricing-credit-bar,.pricing-card__estimates)::after, .pricing-compare__scroll[data-loading-state="loading"] :is([data-compare-price],[data-credit-tier])::after { content:''; position:absolute; inset:10% 0; max-width:85%; border-radius:var(--sc-radius-sm); background:var(--sc-color-border); }
.pricing-card[data-loading-state="loading"] .pricing-card__price::after { width:7rem; }
.pricing-card[data-loading-state="loading"] .pricing-card__estimates { height:4.35em; overflow:hidden; }
.pricing-card[data-loading-state="loading"] .pricing-card__estimates::after { background:repeating-linear-gradient(to bottom,var(--sc-color-border) 0 0.8em,transparent 0.8em 1.45em); }
.pricing-card[data-loading-state="refreshing"] { outline:1px solid var(--sc-color-border); }
.pricing-card[data-loading-state="loading"] :is(.pricing-card__price,.pricing-credit-bar)::after,.pricing-compare__scroll[data-loading-state="loading"] :is([data-compare-price],[data-credit-tier])::after { background:linear-gradient(90deg,#2a2019 0%,#382b21 45%,#2a2019 90%); background-size:220% 100%; animation:sc-skeleton 1.5s linear infinite; }
.pricing-page button[aria-busy="true"]::before { content:''; flex:none; width:16px; height:16px; border:2px solid currentColor; border-right-color:transparent; border-radius:50%; animation:pricing-spin .7s linear infinite; }
@keyframes pricing-spin { to { transform:rotate(360deg); } }
@media(prefers-reduced-motion:reduce) { .pricing-page button[aria-busy="true"]::before,.pricing-card[data-loading-state="loading"] :is(.pricing-card__price,.pricing-credit-bar)::after,.pricing-compare__scroll[data-loading-state="loading"] :is([data-compare-price],[data-credit-tier])::after { animation:none; } }
.pricing-card__estimates > span { display:block; }
.pricing-shell { width:min(var(--sc-container),calc(100% - 40px)); margin-inline:auto; }
.pricing-vip-banner { margin-top:var(--sc-space-4); }
.pricing-vip-banner__inner { min-height:172px; padding:var(--sc-space-8); display:flex; align-items:center; justify-content:space-between; gap:var(--sc-space-6); border-radius:var(--sc-radius-xl); color:#fff; background:linear-gradient(118deg,var(--sc-color-brand-600),var(--sc-color-brand-500) 58%,#ff9f20); }
.pricing-vip-banner p { max-width:32rem; margin:0; display:grid; gap:var(--sc-space-2); }
.pricing-vip-banner strong { font-size:clamp(1.375rem,2.6vw,2rem); line-height:1.1; letter-spacing:-.035em; }
.pricing-vip-banner span { font-size:.9375rem; line-height:1.55; }
.pricing-vip-banner a { flex:0 0 auto; padding:.75rem 1rem; border:1px solid rgba(255,255,255,.72); border-radius:var(--sc-radius-md); color:#fff; font-size:.8125rem; font-weight:800; text-decoration:none; }
.pricing-vip-banner a:hover { background:rgba(255,255,255,.16); }
.pricing-vip-banner a:focus-visible { outline:2px solid #fff; outline-offset:3px; }
.pricing-hero { padding:var(--sc-space-6) 0 var(--sc-space-5); text-align:center; }
.pricing-hero h1 { max-width:none; margin:0; font-size:clamp(2.5rem,3.35vw,3rem); font-weight:600; line-height:1.16; }
.pricing-alert { max-width:720px; margin:0 auto var(--sc-space-5); text-align:center; }
[role="tablist"] { text-align:center; }
.pricing-switch { display:inline-flex; margin:0 auto var(--sc-space-8); padding:var(--sc-space-1); gap:var(--sc-space-1); border-radius:var(--sc-radius-pill); background:var(--sc-color-surface-muted); }
.pricing-switch__button { min-height:38px; padding:0 var(--sc-space-5); border:0; border-radius:var(--sc-radius-pill); color:var(--sc-color-muted); background:transparent; font:750 .8125rem/1 var(--sc-font-sans); cursor:pointer; }
.pricing-switch__button[aria-selected="true"] { color:var(--sc-color-brand-800); background:var(--sc-color-brand-100); }
.pricing-switch__button:hover { color:var(--sc-color-ink); }
.pricing-switch__button[aria-selected="true"]:hover { color:var(--sc-color-brand-900); }
.pricing-switch__button:focus-visible { outline:2px solid var(--sc-color-focus); outline-offset:2px; }
.pricing-offer-panel { padding-bottom:var(--sc-space-12); }
.pricing-offer-panel[hidden],.pricing-page [hidden] { display:none!important; }
.pricing-section-heading { margin:0; }
.pricing-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); align-items:stretch; gap:var(--sc-space-5); }
.pricing-page .pricing-grid .pricing-card { min-width:0; padding:var(--sc-space-6); display:flex; flex-direction:column; border:1px solid var(--sc-color-border); border-radius:var(--sc-radius-xl); background:var(--sc-color-surface-muted); box-shadow:none; }
.pricing-page .pricing-card:hover { transform:none; }
.pricing-card__heading { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:var(--sc-space-2); }
.pricing-page .pricing-card--recommended { border-color:var(--sc-color-brand-500); }
.pricing-card__recommended { box-sizing:border-box; max-width:100%; margin:0; padding:var(--sc-space-1) var(--sc-space-2); border-radius:var(--sc-radius-sm); color:var(--sc-color-brand-800); background:var(--sc-color-brand-100); font-size:.6875rem; font-weight:700; line-height:1.4; overflow-wrap:anywhere; text-align:center; }
.pricing-card__recommended:empty { display:none; }
.pricing-page .pricing-card h3 { min-width:0; max-width:100%; margin:0; color:var(--sc-color-ink); font-size:1.5rem; font-weight:700; letter-spacing:-.025em; line-height:1.2; overflow-wrap:anywhere; text-align:left; }
.pricing-page .pricing-card__price { margin:var(--sc-space-5) 0 var(--sc-space-4); display:flex; align-items:baseline; gap:var(--sc-space-2); color:var(--sc-color-muted); text-align:left; }
.pricing-card__price strong { color:#fff; font-size:2.5rem; font-weight:750; line-height:1; letter-spacing:-.06em; }
.pricing-card__price>span { color:var(--sc-color-muted); font-size:.8125rem; }
.pricing-page .pricing-grid .pricing-card__price strong>[data-plan-price] { color:#fff; font-size:2.5rem!important; font-weight:750; line-height:1; letter-spacing:-.06em; }
.pricing-page .pricing-grid .pricing-card > .pricing-credit-bar { min-height:0; height:auto; margin:0 0 var(--sc-space-5); padding:0; border:0; color:var(--sc-color-brand-800); background:none; font-size:.9375rem; font-weight:500; line-height:1.5; text-align:left; }
.pricing-page .pricing-card .billing-button { width:100%; min-width:0; min-height:48px; padding-inline:min(var(--sc-space-5),20px); white-space:normal; overflow-wrap:anywhere; font-size:var(--sc-font-size-md); }
.pricing-page .pricing-card__estimates { min-height:0; margin:var(--sc-space-5) 0 0; padding:0; color:#fff; background:transparent; font-size:var(--sc-font-size-md); font-weight:750; line-height:1.45; text-align:left; white-space:pre-line; }
.pricing-card__features { margin:var(--sc-space-5) 0 0; padding:0; display:grid; gap:var(--sc-space-3); list-style:none; }
.pricing-page .pricing-grid .pricing-card .pricing-card__features li { color:var(--sc-color-muted); font-size:var(--sc-font-size-md); line-height:1.8; text-align:left; }
.pricing-vip-card { margin-top:var(--sc-space-6); padding:var(--sc-space-4); display:grid; gap:var(--sc-space-2); border:1px solid rgba(255,185,87,.44); border-radius:var(--sc-radius-md); background:linear-gradient(135deg,rgba(244,84,35,.28),rgba(244,193,105,.13)); }
.pricing-vip-card strong { color:#fff3d7; font-size:.8125rem; }
.pricing-page .pricing-vip-card>p { margin:0; color:#e5e5e5; font-size:.75rem; line-height:1.5; text-align:left; }
.pricing-estimate-recovery { min-height:0; margin-bottom:var(--sc-space-8); text-align:center; }
.pricing-estimate-recovery .sc-button { width:auto; min-height:44px; padding:var(--sc-space-2) var(--sc-space-3); font-size:.75rem; }
.pricing-compare { padding:var(--sc-space-12) 0; border-top:1px solid var(--sc-color-border); background:var(--sc-color-canvas); }
.pricing-compare h2 { margin:0 0 var(--sc-space-6); font-size:clamp(1.75rem,4vw,2.5rem); letter-spacing:-.04em; text-align:left; scroll-margin-top:calc(var(--sc-header-height,76px) + var(--sc-space-4)); }
.pricing-compare__scroll { overflow-x:auto; border:1px solid var(--sc-color-border); border-radius:var(--sc-radius-lg); }
.pricing-compare table { width:100%; min-width:680px; border-collapse:collapse; color:var(--sc-color-text); font-size:var(--sc-font-size-md); }
.pricing-compare th,.pricing-compare td { padding:var(--sc-space-4); border-bottom:1px solid var(--sc-color-border); text-align:center; }
.pricing-compare thead th { color:var(--sc-color-ink); background:var(--sc-color-surface-muted); font-size:var(--sc-font-size-md); }
.pricing-compare tbody th { color:var(--sc-color-muted); text-align:left; font-weight:700; }
.pricing-compare tbody tr:last-child th,.pricing-compare tbody tr:last-child td { border-bottom:0; }
.pricing-compare :is(th,td):nth-child(4) { background:color-mix(in srgb,var(--sc-color-brand-500) 5%,var(--sc-color-surface)); }
.pricing-compare__button { min-height:44px; padding:0 var(--sc-space-3); border:1px solid var(--sc-color-border-strong); border-radius:var(--sc-radius-sm); color:#fff; background:transparent; font:700 1rem/1.4 var(--sc-font-sans); cursor:pointer; }
.pricing-compare__button:hover { border-color:var(--sc-color-brand-500); color:var(--sc-color-brand-800); }
.pricing-compare__button:focus-visible,.pricing-compare__scroll:focus-visible { outline:2px solid var(--sc-color-focus); outline-offset:2px; }
.pricing-compare__hint { display:none; }
.pricing-model-catalog { margin-top:var(--sc-space-8); padding-top:var(--sc-space-6); border-top:1px solid var(--sc-color-border); }
.pricing-model-catalog__heading { display:grid; gap:var(--sc-space-2); }
.pricing-model-catalog__heading h3 { margin:0; color:var(--sc-color-ink); font-size:var(--sc-font-size-xl); line-height:1.4; scroll-margin-top:calc(var(--sc-header-height,76px) + var(--sc-space-4)); }
.pricing-model-catalog__heading p { max-width:64ch; margin:0; color:var(--sc-color-muted); font-size:var(--sc-content-small-size); line-height:1.8; text-align:left; }
.pricing-card > .sc-model-access { padding-block:var(--sc-space-3); border-block:1px solid var(--sc-color-border); text-align:left; }
.pricing-faq { max-width:var(--sc-reading-width); padding-block:var(--sc-space-16); }
.pricing-faq h2 { margin-bottom:var(--sc-space-4); text-align:center; }
.pricing-faq .sc-lede { margin:0 auto var(--sc-space-5); text-align:center; }
@media (max-width:763px) { .pricing-grid { grid-template-columns:1fr; } .pricing-page .pricing-card:not(.pricing-card--recommended) { margin-top:0; } .pricing-vip-banner__inner { min-height:0; align-items:flex-start; flex-direction:column; }
  .pricing-compare__hint { display:block; margin:var(--sc-space-2) 0 0; color:var(--sc-color-muted); font-size:var(--sc-font-size-sm); line-height:var(--sc-leading-copy); text-align:start; }
  .pricing-compare th:first-child { position:sticky; left:0; z-index:1; background:var(--sc-color-surface); }
  .pricing-compare thead th:first-child { background:var(--sc-color-surface-muted); }
}
@media (max-width:540px) { .pricing-shell { width:min(var(--sc-container),calc(100% - 24px)); } .pricing-vip-banner { margin-top:var(--sc-space-3); } .pricing-vip-banner__inner { padding:var(--sc-space-6); } .pricing-hero { padding-block:var(--sc-space-5); } .pricing-hero h1 { font-size:2.125rem; } .pricing-switch { width:100%; } .pricing-switch__button { flex:1; min-width:0; padding:var(--sc-space-2); overflow-wrap:anywhere; } .pricing-page .pricing-card { padding:var(--sc-space-5); } .pricing-compare { padding-block:var(--sc-space-10); } }

/* Keep the measured pricing controls independent of the shared page defaults. */
.pricing-page .pricing-switch__button { min-height:44px; font-size:var(--sc-font-size-md); }
.pricing-page .pricing-grid .pricing-card--recommended { border-color:var(--sc-color-brand-500); }
.pricing-page .pricing-hero__lede { display:block; margin:var(--sc-space-3) auto 0; }
.pricing-page .pricing-vip-banner__inner { background:radial-gradient(ellipse at 100% 100%,#e87924,transparent 65%),linear-gradient(115deg,#2b120e,#171410 40%,#c84420); }
.pricing-page .pricing-vip-banner p { text-align:left; }
.pricing-page .pricing-vip-banner strong { color:#ff7840; }
.pricing-page .pricing-grid .pricing-card--recommended { border-color:var(--sc-color-brand-500); background:var(--sc-color-brand-50); }
.pricing-page .pricing-vip-card,.pricing-page .pricing-vip-card strong { text-align:left; }

.pricing-page .pricing-card__terms { margin:var(--sc-space-3) 0 0; color:var(--sc-color-muted); font-size:var(--sc-font-size-sm); line-height:1.7; text-align:left; }

.pricing-subscription-promo { display:grid; gap:var(--sc-space-2); margin:0 0 var(--sc-space-6); padding:var(--sc-space-5) var(--sc-space-6); border-left:var(--sc-space-1) solid var(--sc-color-brand-500); border-radius:var(--sc-radius-md); background:var(--sc-color-surface-muted); }
.pricing-subscription-promo__label { color:var(--sc-color-brand-700); font-size:var(--sc-font-size-sm); font-weight:700; }
.pricing-subscription-promo h2 { margin:0; font-size:clamp(1.25rem,3vw,1.75rem); line-height:1.3; text-wrap:balance; }
.pricing-subscription-promo p { margin:0; color:var(--sc-color-muted); font-size:var(--sc-content-small-size); line-height:1.8; text-align:left; }
.pricing-subscription-promo__saving { color:var(--sc-color-ink)!important; font-weight:600; }
.pricing-page .pricing-grid .pricing-card .pricing-card__features .pricing-card__subscription-benefit { color:var(--sc-color-brand-700); font-weight:700; }
.pricing-pack-eligibility { margin:0 0 var(--sc-space-5); color:var(--sc-color-muted); font-size:var(--sc-font-size-sm); line-height:1.6; text-align:center; }

/* Current and reference prices remain one compact, readable price group. */
.pricing-page .pricing-card__price { flex-wrap:wrap; margin-bottom:4px; }
.pricing-page .pricing-card__saving { display:flex; flex-wrap:nowrap; white-space:nowrap; align-items:center; gap:8px; margin:0 0 var(--sc-space-4); color:var(--sc-color-muted); font-size:.8125rem; line-height:1.4; }
.pricing-page .pricing-card__saving[hidden] { display:none; }
.pricing-card__saving s { flex:none; }
.pricing-card__saving span { min-width:0; color:var(--sc-color-brand-700); white-space:normal; overflow-wrap:anywhere; }
.pricing-shared-benefits { margin:0 0 var(--sc-space-4); color:var(--sc-color-muted); font-size:.8125rem; line-height:1.6; text-align:center; }
.pricing-estimate-recovery { display:grid; gap:var(--sc-space-2); }
.pricing-estimate-recovery .pricing-shared-benefits { margin:0; }
.pricing-page .billing-button:active:not(:disabled) { transform:translateY(1px); }
.pricing-page .billing-button:focus-visible { outline:2px solid var(--sc-color-focus); outline-offset:3px; }
.pricing-page .billing-button:disabled { opacity:.5; cursor:wait; }
@media(prefers-reduced-motion:reduce) { .pricing-page .billing-button:active:not(:disabled) { transform:none; } }

.pricing-page .pricing-card__estimates { display:grid; gap:var(--sc-space-2); margin:0 0 var(--sc-space-5); color:var(--sc-color-muted); font-size:var(--sc-font-size-md); font-weight:400; }
.pricing-page .pricing-card .billing-button { margin-top:auto; font-size:var(--sc-font-size-md); }

.pricing-model-summary-link { justify-self:center; color:var(--sc-color-muted); font-size:.8125rem; min-height:44px; display:inline-flex; align-items:center; }
@media (max-width:540px) { .pricing-page .pricing-grid .pricing-card { padding:min(var(--sc-space-5),20px); } }

/* v5b / 15–16: three equal plan panels and the monthly/credit switch. */

.pricing-page .pricing-shell { width:min(var(--sc-container),calc(100% - 48px)); }
.pricing-page .pricing-switch { padding:5px; border:1px solid var(--sc-color-border); background:var(--sc-color-well); border-radius:var(--sc-radius-pill); }
.pricing-page .pricing-switch__button { min-height:44px; padding:10px 22px; border-radius:var(--sc-radius-pill); font-size:var(--sc-font-size-md); font-weight:600; }
.pricing-page .pricing-model-catalog .sc-button { min-height:44px; }
.pricing-page .pricing-switch__button[aria-selected="true"] { background:var(--sc-color-control-hover); color:var(--sc-color-ink); box-shadow:var(--sc-shadow-sm); }
.pricing-page .pricing-grid { gap:20px; }
.pricing-page .pricing-grid .pricing-card { padding:30px 28px 28px; border-radius:var(--sc-radius-xl); background:var(--sc-color-surface); box-shadow:inset 0 1px 0 var(--sc-color-border); }
.pricing-page .pricing-grid .pricing-card--recommended { border-color:color-mix(in srgb,var(--sc-color-brand-500) 45%,transparent); background:linear-gradient(180deg,color-mix(in srgb,var(--sc-color-brand-500) 8%,var(--sc-color-surface)),var(--sc-color-surface)); box-shadow:0 30px 80px -30px color-mix(in srgb,var(--sc-color-brand-500) 25%,transparent); }
.pricing-page .pricing-card__heading { min-height:28px; order:0; align-items:center; }
.pricing-page .pricing-card h3 { font:600 22px/1.25 var(--sc-font-display); letter-spacing:-.02em; }
.pricing-page .pricing-card__recommended { padding:5px 10px; border:1px solid color-mix(in srgb,var(--sc-color-brand-500) 30%,transparent); border-radius:var(--sc-radius-pill); color:var(--sc-color-brand-700); background:var(--sc-color-brand-50); font:500 10px/1.4 var(--sc-font-mono); letter-spacing:.05em; }
.pricing-page .pricing-card__price { order:1; margin:22px 0 0; gap:8px; }
.pricing-page .pricing-card__price strong,.pricing-page .pricing-grid .pricing-card__price strong>[data-plan-price] { color:var(--sc-color-ink); font:600 48px/1 var(--sc-font-display); font-size:48px!important; letter-spacing:-.045em; }
.pricing-page .pricing-card__price>span { font-size:14px; }
.pricing-page .pricing-card__saving { order:2; margin:8px 0 0; font-size:13px; }
.pricing-page .pricing-grid .pricing-card > .pricing-credit-bar { order:3; margin:22px 0 16px; padding:20px 0 0; border-top:1px solid var(--sc-color-border); color:var(--sc-color-ink); font:600 18px/1.4 var(--sc-font-display); letter-spacing:-.015em; }
.pricing-page .pricing-card__estimates { order:4; margin:0 0 16px; color:var(--sc-color-text); font-size:var(--sc-font-size-md); font-weight:400; line-height:1.9; }
.pricing-page .pricing-card__features { order:5; margin:0 0 24px; gap:11px; }
.pricing-page .pricing-grid .pricing-card .pricing-card__features li { font-size:var(--sc-font-size-md); line-height:1.8; }
.pricing-page .pricing-card .billing-button { order:6; margin-top:auto; min-height:48px; border-radius:var(--sc-radius-pill); font-size:var(--sc-font-size-md); }
.pricing-page .pricing-card__terms { order:7; margin:14px 0 0; font-size:var(--sc-font-size-sm); line-height:1.7; text-align:center; color:var(--sc-color-subtle); }
.pricing-page .pricing-shared-benefits,.pricing-page .pricing-pack-eligibility { font-size:var(--sc-font-size-md); }
.pricing-page .pricing-compare,.pricing-page .pricing-faq { background:transparent; }

@media(min-width:768px) and (max-width:1100px) { .pricing-page .pricing-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:767px) {
 .pricing-page .pricing-shell { width:calc(100% - 32px); }
 .pricing-page .pricing-grid { grid-template-columns:minmax(0,1fr); gap:14px; }
 .pricing-page .pricing-grid .pricing-card { padding:22px 20px 20px; }
 .pricing-page .pricing-card__price strong,.pricing-page .pricing-grid .pricing-card__price strong>[data-plan-price] { font-size:40px!important; }
 .pricing-page .pricing-switch { max-width:100%; }
 .pricing-page .pricing-switch__button { padding:10px 16px; font-size:var(--sc-font-size-md); }
}
