/* Two visible offers: shared language, distinct commitment. */
body.pricing-page .pricing-main {
  width:min(calc(100% - 80px),1100px) !important;
  max-width:1100px !important;
}

.pricing-page .pricing-plan-grid.pricing-plan-grid--dual {
  width:100% !important;
  max-width:1060px !important;
  margin-right:auto !important;
  margin-left:auto !important;
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:24px !important;
  align-items:stretch !important;
}

.pricing-page .pricing-plan-grid--dual > .pricing-offer-card--monthly {
  order:1 !important;
}

.pricing-page .pricing-plan-grid--dual > .pricing-offer-card--lifetime {
  order:2 !important;
}

.pricing-page .pricing-plan-grid--dual > .pricing-limit-note {
  order:3 !important;
  grid-column:1 / -1 !important;
  margin-top:8px !important;
}

.pricing-page .pricing-plan-grid--dual .pricing-offer-card.pricing-offer-card--split {
  position:relative !important;
  width:100% !important;
  min-width:0 !important;
  min-height:100% !important;
  display:flex !important;
  flex-direction:column !important;
}

.pricing-page .pricing-plan-grid--dual .pricing-offer-body-card {
  min-height:0 !important;
  display:flex !important;
  flex:1 1 auto !important;
  flex-direction:column !important;
}

.pricing-page .pricing-plan-grid--dual .pricing-offer-purchase {
  padding:34px 34px 20px !important;
}

.pricing-page .pricing-plan-name {
  margin:0 0 22px !important;
  color:#f2f2ee !important;
  font:620 15px/1.2 var(--sans) !important;
  letter-spacing:-.015em !important;
  text-align:center !important;
}

.pricing-page .pricing-plan-grid--dual .pricing-offer-price,
.pricing-page .pricing-plan-grid--dual .pricing-offer-notes {
  justify-content:center !important;
  text-align:center !important;
}

.pricing-page .pricing-plan-grid--dual .pricing-offer-copy {
  max-width:380px !important;
  margin-right:auto !important;
  margin-left:auto !important;
  text-align:center !important;
  white-space:normal !important;
  overflow-wrap:anywhere !important;
}

.pricing-page .pricing-plan-grid--dual .pricing-offer-action.launch-offer__action:not(.pricing-promo-bar__action) {
  width:min(100%,280px) !important;
  margin:58px auto 0 !important;
  display:inline-flex !important;
  border-color:#f5f5f2 !important;
  border-radius:12px !important;
  background:#f5f5f2 !important;
  color:#111214 !important;
  box-shadow:none !important;
}

.pricing-page .pricing-plan-grid--dual .pricing-offer-action.launch-offer__action > b {
  color:#111214 !important;
}

.pricing-page .pricing-plan-grid--dual .pricing-offer-card--lifetime .pricing-offer-action.launch-offer__action:not(.pricing-promo-bar__action) {
  border-color:var(--ds-primary) !important;
  background:var(--ds-primary) !important;
  color:#fff !important;
}

.pricing-page .pricing-plan-grid--dual .pricing-offer-card--lifetime .pricing-offer-action.launch-offer__action > b {
  color:#fff !important;
}

@media (hover:hover) and (pointer:fine) {
  .pricing-page .pricing-plan-grid--dual .pricing-offer-card--lifetime .pricing-offer-action.launch-offer__action:not(.pricing-promo-bar__action):hover {
    border-color:#0a8de8 !important;
    background:#0a8de8 !important;
  }
}

.pricing-page .pricing-plan-grid--dual .pricing-offer-card--lifetime .pricing-offer-action.launch-offer__action:not(.pricing-promo-bar__action):active {
  border-color:var(--ds-primary-active) !important;
  background:var(--ds-primary-active) !important;
}

.pricing-page .pricing-plan-grid--dual .pricing-offer-included.pricing-checklist {
  margin-top:auto !important;
  padding:20px 34px 28px !important;
}

.pricing-page .pricing-offer-card--monthly.is-monthly-plan {
  border:1px solid rgba(255,255,255,.14) !important;
  border-radius:20px !important;
  background:radial-gradient(90% 62% at 92% -5%,rgba(255,255,255,.055),transparent 65%),linear-gradient(155deg,#181819 0%,#121213 100%) !important;
}

.pricing-page .pricing-offer-card--monthly .pricing-offer-body-card {
  order:2 !important;
  margin:0 !important;
  border:0 !important;
  border-radius:0 0 20px 20px !important;
  background:transparent !important;
}

.pricing-page .pricing-offer-card--monthly .pricing-offer-price span {
  color:#a7a8a4 !important;
}

.pricing-page .pricing-offer-card--lifetime .pricing-offer-body-card {
  order:2 !important;
  margin:3px !important;
  border:1px solid rgba(255,255,255,.14) !important;
  border-radius:14px !important;
  transition:border-color 280ms ease,box-shadow 280ms ease !important;
}

.pricing-page .pricing-plan-grid--dual .pricing-offer-card--lifetime {
  overflow:hidden !important;
}

.pricing-page .pricing-monthly-banner,
.pricing-page .pricing-lifetime-banner {
  order:1 !important;
  min-height:66px !important;
  padding:0 18px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:16px !important;
  border-radius:19px 19px 0 0 !important;
  background:var(--color-accent-500) !important;
  color:#fff !important;
}

.pricing-page .pricing-monthly-banner {
  justify-content:center !important;
  border-bottom:1px solid rgba(255,255,255,.08) !important;
  background:#19191a !important;
}

.pricing-page .pricing-monthly-banner h2,
.pricing-page .pricing-lifetime-banner h2 {
  margin:0 !important;
  color:#fff !important;
  font:620 15px/1 var(--sans) !important;
  letter-spacing:-.015em !important;
}

.pricing-page .pricing-offer-card--lifetime .pricing-offer-deadline {
  position:static !important;
  z-index:4 !important;
  width:max-content !important;
  margin:0 !important;
  padding:0 !important;
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  justify-content:center !important;
  gap:9px !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  transform:none !important;
  white-space:nowrap !important;
}

.pricing-page .pricing-offer-card--lifetime .pricing-offer-deadline::before {
  content:none;
}

.pricing-page .pricing-offer-card--lifetime .pricing-offer-deadline > p {
  margin:0 !important;
  color:#dededb !important;
  color:rgba(255,255,255,.78) !important;
  font-size:10px !important;
  font-weight:650 !important;
  line-height:1 !important;
}

.pricing-page .pricing-offer-card--lifetime .pricing-offer-deadline .pricing-top-offer__clock {
  gap:4px !important;
}

.pricing-page .pricing-offer-card--lifetime .pricing-offer-deadline .pricing-top-offer__clock > span {
  min-width:0 !important;
  padding:0 !important;
  gap:1px !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
}

.pricing-page .pricing-offer-card--lifetime .pricing-offer-deadline .pricing-top-offer__clock b {
  color:#f1f1ed !important;
  font-size:19px !important;
  font-weight:720 !important;
  font-variant-numeric:tabular-nums !important;
}

.pricing-page .pricing-offer-card--lifetime .pricing-offer-deadline .pricing-top-offer__clock small {
  color:rgba(255,255,255,.7) !important;
  font-size:8px !important;
}

.pricing-page .pricing-offer-card--lifetime .pricing-offer-deadline .pricing-top-offer__clock i {
  color:rgba(255,255,255,.46) !important;
  font-size:10px !important;
  font-style:normal !important;
}

.pricing-page .pricing-offer-card--lifetime .pricing-offer-deadline .pricing-top-offer__clock > span.is-ticking {
  animation:none !important;
}

@media (hover:hover) and (pointer:fine) {
  .pricing-page .pricing-plan-grid--dual .pricing-offer-card {
    transform:none !important;
    transition:border-color 280ms ease,filter 280ms ease,box-shadow 280ms ease !important;
  }

  .pricing-page .pricing-plan-grid--dual .pricing-offer-card:hover {
    transform:none !important;
    filter:brightness(1.025) saturate(1.015) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.09),inset 0 0 42px rgba(255,255,255,.018) !important;
  }

  .pricing-page .pricing-plan-grid--dual .pricing-offer-card--monthly:hover {
    border-color:rgba(255,255,255,.27) !important;
  }

  .pricing-page .pricing-plan-grid--dual .pricing-offer-card--lifetime:hover {
    border-color:#ff3d60 !important;
    box-shadow:none !important;
  }

  .pricing-page .pricing-plan-grid--dual .pricing-offer-card--lifetime:hover .pricing-offer-body-card {
    border-color:rgba(255,255,255,.27) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.09),inset 0 0 42px rgba(255,255,255,.018) !important;
  }
}

@media (max-width:900px) {
  body.pricing-page .pricing-main {
    width:100% !important;
    max-width:none !important;
  }

  .pricing-page .pricing-plan-grid.pricing-plan-grid--dual {
    width:calc(100vw - 44px) !important;
    max-width:calc(100vw - 44px) !important;
    grid-template-columns:minmax(0,1fr) !important;
    gap:20px !important;
  }

  .pricing-page .pricing-plan-grid--dual > .pricing-limit-note {
    grid-column:1 !important;
    margin-top:4px !important;
  }

  .pricing-page .pricing-plan-grid--dual .pricing-offer-purchase {
    padding:28px 20px 18px !important;
  }

  .pricing-page .pricing-plan-name {
    margin-bottom:18px !important;
    font-size:14px !important;
  }

  .pricing-page .pricing-plan-grid--dual .pricing-offer-price {
    flex-wrap:wrap !important;
    row-gap:7px !important;
  }

  .pricing-page .pricing-offer-card--lifetime .pricing-offer-price > span {
    flex:0 0 100% !important;
    text-align:center !important;
  }

  .pricing-page .pricing-limit-note p {
    white-space:normal !important;
    overflow-wrap:anywhere !important;
  }

  .pricing-page .pricing-plan-grid--dual .pricing-offer-action.launch-offer__action:not(.pricing-promo-bar__action) {
    margin-top:46px !important;
  }

  .pricing-page .pricing-plan-grid--dual .pricing-offer-included.pricing-checklist {
    padding:18px 20px 24px !important;
  }

  .pricing-page .pricing-offer-card--lifetime > .pricing-top-offer .pricing-top-offer__inner {
    min-height:108px !important;
    padding:8px 10px !important;
    gap:6px !important;
  }

  .pricing-page .pricing-plan-cap__label {
    font-size:14px !important;
  }

  .pricing-page .pricing-offer-card--lifetime .pricing-offer-deadline .pricing-top-offer__clock > span {
    min-width:0 !important;
    padding:0 !important;
  }

  .pricing-page .pricing-offer-card--lifetime .pricing-offer-deadline .pricing-top-offer__clock b {
    font-size:18px !important;
  }

}

@media (prefers-reduced-motion:reduce) {
  .pricing-page .pricing-plan-grid--dual .pricing-offer-card {
    transition:none !important;
    transform:none !important;
  }
}

/* Mobile pricing v2 — one clean decision flow, isolated from legacy pricing rules. */
@media (max-width:680px) {
  html:has(body.pricing-page) {
    width:100% !important;
    min-height:100% !important;
    overflow-x:hidden !important;
    overflow-y:auto !important;
  }

  body.pricing-page {
    width:100% !important;
    min-height:100svh !important;
    padding:0 !important;
    overflow-x:hidden !important;
  }

  body.pricing-page .pricing-page-stage {
    width:100% !important;
    min-height:100svh !important;
    overflow:visible !important;
  }

  body.pricing-page .pricing-main {
    position:relative !important;
    left:0 !important;
    width:100vw !important;
    max-width:none !important;
    margin:0 !important;
    padding:104px 0 44px !important;
    overflow:visible !important;
    transform:none !important;
  }

  .pricing-page .pricing-hero {
    width:calc(100% - 44px) !important;
    margin:0 auto 30px !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    text-align:center !important;
  }

  .pricing-page .pricing-hero__limited {
    order:1 !important;
    margin:0 !important;
    padding:6px 10px !important;
    border:1px solid rgba(243,160,108,.22) !important;
    border-radius:999px !important;
    background:rgba(243,160,108,.1) !important;
    color:#f3b18a !important;
    font:650 11px/1 var(--sans) !important;
    letter-spacing:.01em !important;
  }

  .pricing-page .pricing-hero h1 {
    order:2 !important;
    margin:18px 0 0 !important;
    color:#f7f5f6 !important;
    font:600 32px/1.02 var(--sans) !important;
    letter-spacing:-.045em !important;
    text-wrap:balance !important;
  }

  .pricing-page .pricing-hero__subtitle {
    order:3 !important;
    max-width:320px !important;
    margin:12px 0 0 !important;
    color:#a9a5ad !important;
    font:450 15px/1.42 var(--sans) !important;
    letter-spacing:-.01em !important;
    text-wrap:balance !important;
  }

  .pricing-page .pricing-hero__members {
    order:4 !important;
    margin:15px 0 0 !important;
    padding:0 !important;
    color:#d5d2d8 !important;
    font:600 12px/1 var(--sans) !important;
  }

  .pricing-page .pricing-hero__members::after { display:none !important; }

  .pricing-page .pricing-plan-grid.pricing-plan-grid--dual {
    width:calc(100vw - 32px) !important;
    max-width:420px !important;
    margin:0 auto !important;
    display:grid !important;
    grid-template-columns:minmax(0,1fr) !important;
    gap:16px !important;
  }

  .pricing-page .pricing-plan-grid--dual .pricing-offer-card.pricing-offer-card--split {
    width:100% !important;
    min-width:0 !important;
    min-height:0 !important;
    margin:0 !important;
    overflow:hidden !important;
    border:1px solid rgba(247,239,233,.13) !important;
    border-radius:14px !important;
    background:#17161b !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.035) !important;
  }

  .pricing-page .pricing-monthly-banner,
  .pricing-page .pricing-lifetime-banner {
    min-height:50px !important;
    padding:0 16px !important;
    border-radius:0 !important;
    background:#201e25 !important;
  }

  .pricing-page .pricing-monthly-banner { justify-content:flex-start !important; }

  .pricing-page .pricing-lifetime-banner {
    gap:10px !important;
    background:linear-gradient(105deg,#5343bd 0%,#7651a4 58%,#a05a42 100%) !important;
  }

  .pricing-page .pricing-monthly-banner h2,
  .pricing-page .pricing-lifetime-banner h2 {
    font:650 14px/1 var(--sans) !important;
  }

  .pricing-page .pricing-offer-card--lifetime .pricing-offer-deadline {
    min-width:0 !important;
    gap:6px !important;
  }

  .pricing-page .pricing-offer-card--lifetime .pricing-offer-deadline > p {
    display:none !important;
  }

  .pricing-page .pricing-offer-card--lifetime .pricing-offer-deadline .pricing-top-offer__clock {
    gap:3px !important;
  }

  .pricing-page .pricing-offer-card--lifetime .pricing-offer-deadline .pricing-top-offer__clock b {
    font-size:14px !important;
  }

  .pricing-page .pricing-offer-card--lifetime .pricing-offer-deadline .pricing-top-offer__clock small {
    font-size:7px !important;
  }

  .pricing-page .pricing-offer-body-card,
  .pricing-page .pricing-offer-card--monthly .pricing-offer-body-card,
  .pricing-page .pricing-offer-card--lifetime .pricing-offer-body-card {
    width:100% !important;
    margin:0 !important;
    overflow:visible !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
  }

  .pricing-page .pricing-plan-grid--dual .pricing-offer-purchase {
    padding:24px 20px 14px !important;
  }

  .pricing-page .pricing-plan-grid--dual .pricing-offer-price {
    min-height:0 !important;
    margin:0 !important;
    display:flex !important;
    align-items:flex-end !important;
    justify-content:flex-start !important;
    gap:8px !important;
    flex-wrap:nowrap !important;
    text-align:left !important;
  }

  .pricing-page .pricing-offer-price del {
    margin:0 2px 5px 0 !important;
    font-size:22px !important;
  }

  .pricing-page .pricing-offer-price strong {
    color:#f7f5f6 !important;
    font:500 52px/.86 var(--sans) !important;
    letter-spacing:-.06em !important;
  }

  .pricing-page .pricing-offer-price span,
  .pricing-page .pricing-offer-card--lifetime .pricing-offer-price > span {
    flex:0 1 auto !important;
    margin:0 0 5px !important;
    color:#9e9aa3 !important;
    font:550 11px/1 var(--sans) !important;
    text-align:left !important;
  }

  .pricing-page .pricing-offer-copy {
    max-width:none !important;
    margin:14px 0 0 !important;
    color:#aaa6ae !important;
    font:450 14px/1.42 var(--sans) !important;
    text-align:left !important;
    white-space:normal !important;
    overflow-wrap:anywhere !important;
  }

  .pricing-page .pricing-plan-grid--dual .pricing-offer-action.launch-offer__action:not(.pricing-promo-bar__action) {
    width:100% !important;
    min-height:50px !important;
    margin:22px 0 0 !important;
    padding:0 14px 0 18px !important;
    justify-content:space-between !important;
    border:0 !important;
    border-radius:10px !important;
    font:650 14px/1 var(--sans) !important;
  }

  .pricing-page .pricing-plan-grid--dual .pricing-offer-notes {
    margin:12px 0 0 !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    gap:4px !important;
    text-align:left !important;
  }

  .pricing-page .pricing-offer-notes p {
    margin:0 !important;
    color:#77747c !important;
    font:500 10px/1.3 var(--sans) !important;
  }

  .pricing-page .pricing-plan-grid--dual .pricing-offer-included.pricing-checklist {
    margin:0 !important;
    padding:16px 20px 20px !important;
    border-top:1px solid rgba(247,239,233,.08) !important;
  }

  .pricing-page .pricing-offer-included.pricing-checklist ul {
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
    display:grid !important;
    gap:11px !important;
  }

  .pricing-page .pricing-offer-included.pricing-checklist li {
    min-height:18px !important;
    padding-left:23px !important;
    color:#cbc7ce !important;
    font:500 13px/1.35 var(--sans) !important;
  }

  .pricing-page .pricing-offer-included.pricing-checklist li::before {
    top:3px !important;
    left:2px !important;
    width:10px !important;
    height:6px !important;
    border-color:#7d73ed !important;
  }

  .pricing-page .pricing-plan-grid--dual > .pricing-limit-note {
    width:100% !important;
    margin:8px 0 0 !important;
    padding:20px 4px 0 !important;
    border-top:0 !important;
  }

  .pricing-page .pricing-limit-note h2 {
    font-size:14px !important;
  }

  .pricing-page .pricing-limit-note p {
    max-width:350px !important;
    margin-top:9px !important;
    font-size:13px !important;
    line-height:1.48 !important;
    text-wrap:pretty !important;
  }

  .pricing-page .pricing-links {
    width:calc(100% - 44px) !important;
    margin:22px auto 0 !important;
    padding-bottom:calc(8px + env(safe-area-inset-bottom)) !important;
  }
}

/* Smooth native disclosure motion on mobile, including the closing state. */
@media (max-width:680px) {
  .pricing-page .pricing-feature-disclosure > .pricing-offer-included.pricing-checklist {
    min-height:0 !important;
    padding-top:0 !important;
    padding-bottom:0 !important;
    display:grid !important;
    grid-template-rows:0fr !important;
    overflow:hidden !important;
    opacity:0;
    pointer-events:none;
    transition:
      grid-template-rows .38s cubic-bezier(.22,.7,.2,1),
      padding .38s cubic-bezier(.22,.7,.2,1),
      opacity .22s ease !important;
  }

  .pricing-page .pricing-feature-disclosure > .pricing-offer-included.pricing-checklist > ul {
    min-height:0 !important;
    overflow:hidden !important;
  }

  .pricing-page .pricing-feature-disclosure[open] > .pricing-offer-included.pricing-checklist {
    padding-top:22px !important;
    padding-bottom:30px !important;
    grid-template-rows:1fr !important;
    opacity:1;
    pointer-events:auto;
  }

  .pricing-page .pricing-feature-disclosure > summary {
    transition:background .24s ease,border-color .24s ease;
  }

  .pricing-page .pricing-feature-disclosure[open] > summary {
    background:rgba(255,255,255,.018);
  }
}

@media (max-width:680px) and (prefers-reduced-motion:reduce) {
  .pricing-page .pricing-feature-disclosure > .pricing-offer-included.pricing-checklist,
  .pricing-page .pricing-feature-disclosure > summary,
  .pricing-page .pricing-feature-disclosure > summary svg {
    transition:none !important;
  }
}

/* Feature disclosure: compact on mobile, fully expanded on larger screens. */
.pricing-page .pricing-feature-disclosure {
  margin-top:auto;
}

.pricing-page .pricing-feature-disclosure > summary {
  display:none;
}

@media (min-width:681px) {
  .pricing-page .pricing-feature-disclosure:not([open]) > .pricing-offer-included {
    display:block !important;
  }
}

@media (max-width:680px) {
  .pricing-page .pricing-feature-disclosure {
    width:100%;
    margin:0 !important;
    border-top:1px solid rgba(255,255,255,.09);
  }

  .pricing-page .pricing-feature-disclosure > summary {
    min-height:56px;
    padding:0 20px;
    display:grid;
    grid-template-columns:auto 18px;
    justify-content:center;
    align-items:center;
    gap:9px;
    color:#f2f2ef;
    cursor:pointer;
    list-style:none;
    -webkit-tap-highlight-color:transparent;
  }

  .pricing-page .pricing-feature-disclosure > summary::-webkit-details-marker {
    display:none;
  }

  .pricing-page .pricing-feature-disclosure > summary strong {
    grid-column:1;
    font:650 14px/1 var(--sans);
    letter-spacing:-.015em;
    text-align:center;
  }

  .pricing-page .pricing-feature-disclosure > summary span {
    color:#77777d;
    font:600 11px/1 var(--sans);
  }

  .pricing-page .pricing-feature-disclosure > summary svg {
    grid-column:2;
    width:18px;
    height:18px;
    fill:none;
    stroke:#929298;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
    transition:transform .24s cubic-bezier(.22,.7,.2,1);
  }

  .pricing-page .pricing-feature-disclosure[open] > summary svg {
    transform:rotate(180deg);
  }

  .pricing-page .pricing-feature-disclosure[open] > summary {
    border-bottom:1px solid rgba(255,255,255,.07);
  }

  .pricing-page .pricing-feature-disclosure .pricing-offer-included.pricing-checklist {
    padding-top:22px !important;
  }
}

/* Pricing parity — desktop follows the same vertical decision flow as mobile. */
@media (min-width:901px) {
  body.pricing-page .pricing-main {
    width:100% !important;
    max-width:none !important;
  }

  .pricing-page .pricing-plan-grid.pricing-plan-grid--dual {
    width:min(520px,calc(100vw - 96px)) !important;
    max-width:520px !important;
    grid-template-columns:minmax(0,1fr) !important;
    gap:20px !important;
  }

  .pricing-page .pricing-plan-grid--dual > .pricing-limit-note {
    grid-column:1 !important;
    margin-top:4px !important;
  }

  .pricing-page .pricing-plan-grid--dual .pricing-offer-purchase {
    padding:28px 20px 18px !important;
  }

  .pricing-page .pricing-plan-grid--dual .pricing-offer-price {
    flex-wrap:wrap !important;
    row-gap:7px !important;
  }

  .pricing-page .pricing-offer-card--lifetime .pricing-offer-price > span {
    flex:0 0 100% !important;
    text-align:center !important;
  }

  .pricing-page .pricing-plan-grid--dual .pricing-offer-action.launch-offer__action:not(.pricing-promo-bar__action) {
    margin-top:46px !important;
  }

  .pricing-page .pricing-plan-grid--dual .pricing-offer-included.pricing-checklist {
    padding:18px 20px 24px !important;
  }

  .pricing-page .pricing-limit-note p {
    white-space:normal !important;
    overflow-wrap:anywhere !important;
  }
}

/* Mobile pricing v3 — visual parity with the established desktop offer card. */
@media (max-width:680px) {
  body.pricing-page .pricing-main {
    padding-top:96px !important;
  }

  .pricing-page .pricing-hero {
    margin-bottom:34px !important;
  }

  .pricing-page .pricing-hero__limited {
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    color:#fff !important;
    font:650 29px/1.02 var(--sans) !important;
    letter-spacing:-.045em !important;
  }

  .pricing-page .pricing-hero__members {
    margin-top:10px !important;
    color:#c8c8c3 !important;
    font:600 16px/1 var(--sans) !important;
    letter-spacing:-.02em !important;
  }

  .pricing-page .pricing-plan-grid.pricing-plan-grid--dual {
    gap:20px !important;
  }

  .pricing-page .pricing-plan-grid--dual .pricing-offer-card.pricing-offer-card--split {
    border:1px solid rgba(255,255,255,.14) !important;
    border-radius:20px !important;
    background:radial-gradient(90% 62% at 92% -5%,rgba(255,255,255,.055),transparent 65%),linear-gradient(155deg,#181819 0%,#121213 100%) !important;
    box-shadow:none !important;
  }

  .pricing-page .pricing-plan-grid--dual .pricing-offer-card.pricing-offer-card--lifetime {
    border-color:#ff3d60 !important;
  }

  .pricing-page .pricing-monthly-banner,
  .pricing-page .pricing-lifetime-banner {
    min-height:66px !important;
    padding:0 18px !important;
    justify-content:center !important;
    border-radius:19px 19px 0 0 !important;
  }

  .pricing-page .pricing-monthly-banner {
    background:#19191a !important;
  }

  .pricing-page .pricing-lifetime-banner {
    min-height:94px !important;
    padding:14px 18px !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    gap:10px !important;
    background:linear-gradient(115deg,#ff3d60 0%,#e5284d 54%,#c9163b 100%) !important;
  }

  .pricing-page .pricing-monthly-banner h2,
  .pricing-page .pricing-lifetime-banner h2 {
    font:620 15px/1 var(--sans) !important;
  }

  .pricing-page .pricing-offer-card--lifetime .pricing-offer-deadline > p {
    display:block !important;
  }

  .pricing-page .pricing-offer-card--lifetime .pricing-offer-deadline {
    width:100% !important;
    justify-content:center !important;
  }

  .pricing-page .pricing-offer-card--lifetime .pricing-offer-deadline .pricing-top-offer__clock b {
    font-size:18px !important;
  }

  .pricing-page .pricing-plan-grid--dual .pricing-offer-purchase {
    padding:34px 20px 20px !important;
    text-align:center !important;
  }

  .pricing-page .pricing-plan-grid--dual .pricing-offer-price {
    justify-content:center !important;
    align-items:flex-end !important;
    gap:12px !important;
    text-align:center !important;
  }

  .pricing-page .pricing-offer-price strong {
    color:#f8f8f5 !important;
    font:400 72px/.82 var(--sans) !important;
    letter-spacing:-.055em !important;
  }

  .pricing-page .pricing-offer-price span,
  .pricing-page .pricing-offer-card--lifetime .pricing-offer-price > span {
    flex:0 1 auto !important;
    margin:0 0 7px !important;
    color:#a7a8a4 !important;
    font:500 14px/1 var(--sans) !important;
    text-align:center !important;
  }

  .pricing-page .pricing-offer-copy {
    max-width:310px !important;
    margin:20px auto 0 !important;
    color:#93938e !important;
    font:450 14px/1.45 var(--sans) !important;
    text-align:center !important;
  }

  .pricing-page .pricing-plan-grid--dual .pricing-offer-action.launch-offer__action:not(.pricing-promo-bar__action) {
    width:min(100%,280px) !important;
    min-height:52px !important;
    margin:58px auto 0 !important;
    padding:0 20px !important;
    justify-content:center !important;
    border:1px solid #f5f5f2 !important;
    border-radius:12px !important;
    background:#f5f5f2 !important;
    color:#111214 !important;
  }

  .pricing-page .pricing-plan-grid--dual .pricing-offer-card--lifetime .pricing-offer-action.launch-offer__action:not(.pricing-promo-bar__action) {
    border-color:var(--ds-primary) !important;
    background:var(--ds-primary) !important;
    color:#fff !important;
  }

  .pricing-page .pricing-plan-grid--dual .pricing-offer-notes {
    margin-top:16px !important;
    align-items:center !important;
    gap:5px !important;
    text-align:center !important;
  }

  .pricing-page .pricing-offer-notes p {
    color:#777a80 !important;
    font:500 11px/1.35 var(--sans) !important;
  }

  .pricing-page .pricing-plan-grid--dual .pricing-offer-included.pricing-checklist {
    padding:20px 28px 30px !important;
    border-top:0 !important;
  }

  .pricing-page .pricing-offer-included.pricing-checklist ul {
    max-width:310px !important;
    margin:0 auto !important;
    padding:0 !important;
    gap:17px !important;
  }

  .pricing-page .pricing-offer-included.pricing-checklist li {
    padding-left:25px !important;
    color:#d0d0cb !important;
    font:500 15px/1.35 var(--sans) !important;
  }

  .pricing-page .pricing-offer-included.pricing-checklist li::before {
    top:.18em !important;
    left:1px !important;
    width:9px !important;
    height:5px !important;
    border:0 !important;
    border-bottom:2px solid #42d786 !important;
    border-left:2px solid #42d786 !important;
    transform:rotate(-45deg) !important;
    filter:drop-shadow(0 0 5px rgba(66,215,134,.2)) !important;
  }
}

/* Final mobile disclosure spacing must follow the card parity overrides above. */
@media (max-width:680px) {
  .pricing-page .pricing-feature-disclosure:not([open]) > .pricing-offer-included.pricing-checklist {
    padding-top:0 !important;
    padding-bottom:0 !important;
  }

  .pricing-page .pricing-feature-disclosure[open] > .pricing-offer-included.pricing-checklist {
    padding-top:22px !important;
    padding-bottom:30px !important;
  }

  /* Keep the native disclosure mounted until its closing motion is finished. */
  .pricing-page .pricing-feature-disclosure.is-closing > .pricing-offer-included.pricing-checklist {
    padding-top:0 !important;
    padding-bottom:0 !important;
    grid-template-rows:0fr !important;
    opacity:0 !important;
    pointer-events:none !important;
  }

  .pricing-page .pricing-feature-disclosure.is-closing > summary {
    border-bottom-color:transparent !important;
    background:transparent !important;
  }

  .pricing-page .pricing-feature-disclosure.is-closing > summary svg {
    transform:rotate(0deg) !important;
  }
}

/* Mobile plan switch: one focused offer at a time; desktop keeps both cards. */
.pricing-page .pricing-mobile-plan-toggle {
  display:none;
}

@media (max-width:680px) {
  .pricing-page .pricing-mobile-plan-toggle {
    position:relative;
    isolation:isolate;
    order:0 !important;
    width:100%;
    min-height:62px;
    margin:0 0 4px;
    padding:4px;
    display:grid;
    grid-column:1 / -1;
    grid-template-columns:repeat(2,minmax(0,1fr));
    align-items:stretch;
    border:1px solid rgba(255,255,255,.06);
    border-radius:999px;
    background:#222224;
    box-shadow:inset 0 1px 2px rgba(0,0,0,.42);
  }

  .pricing-page .pricing-mobile-plan-toggle::before {
    content:"";
    position:absolute;
    z-index:0;
    top:4px;
    bottom:4px;
    left:4px;
    width:calc(50% - 4px);
    border-radius:999px;
    background:#f7f7f4;
    box-shadow:0 4px 14px rgba(0,0,0,.22);
    transform:translateX(0);
    transition:transform .34s cubic-bezier(.22,.7,.2,1);
  }

  .pricing-page .pricing-mobile-plan-toggle.is-lifetime::before {
    transform:translateX(100%);
  }

  .pricing-page .pricing-mobile-plan-toggle button {
    position:relative;
    z-index:1;
    min-width:0;
    min-height:52px;
    padding:0 12px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:6px;
    border:0;
    border-radius:999px;
    background:transparent;
    color:#f4f4f1;
    font:650 16px/1 var(--sans);
    letter-spacing:-.02em;
    white-space:nowrap;
    cursor:pointer;
    transition:color .25s ease;
    -webkit-tap-highlight-color:transparent;
  }

  .pricing-page .pricing-mobile-plan-toggle button.is-selected {
    color:#111214;
  }

  .pricing-page .pricing-mobile-plan-toggle button em {
    color:#ff3157;
    font:750 13px/1 var(--sans);
    font-style:normal;
    letter-spacing:-.015em;
  }

  .pricing-page .pricing-mobile-plan-toggle button:focus-visible {
    outline:2px solid #fff;
    outline-offset:-4px;
  }

  .pricing-page .pricing-plan-grid--dual > .pricing-offer-card:not(.is-mobile-selected) {
    display:none !important;
  }

  .pricing-page .pricing-plan-grid--dual > .pricing-offer-card.is-mobile-selected {
    display:flex !important;
    animation:pricingMobileCardIn .34s cubic-bezier(.22,.7,.2,1) both;
  }
}

@keyframes pricingMobileCardIn {
  from { opacity:0;transform:translateY(8px); }
  to { opacity:1;transform:translateY(0); }
}

@media (max-width:680px) and (prefers-reduced-motion:reduce) {
  .pricing-page .pricing-mobile-plan-toggle::before {
    transition:none;
  }

  .pricing-page .pricing-plan-grid--dual > .pricing-offer-card.is-mobile-selected {
    animation:none;
  }
}

/* Compact lifetime offer header with rounded inset corners at the red/black join. */
@media (max-width:680px) {
  .pricing-page .pricing-plan-grid--dual .pricing-offer-card.pricing-offer-card--lifetime {
    overflow:hidden !important;
    border-radius:20px !important;
    background:linear-gradient(115deg,#ff3d60 0%,#e5284d 54%,#c9163b 100%) !important;
  }

  .pricing-page .pricing-plan-grid--dual .pricing-offer-card--lifetime .pricing-lifetime-banner {
    min-height:66px !important;
    padding:9px 16px !important;
    gap:7px !important;
    border-radius:19px 19px 0 0 !important;
  }

  .pricing-page .pricing-plan-grid--dual .pricing-offer-card--lifetime .pricing-lifetime-banner h2 {
    font-size:14px !important;
  }

  .pricing-page .pricing-plan-grid--dual .pricing-offer-card--lifetime .pricing-offer-deadline .pricing-top-offer__clock b {
    font-size:16px !important;
  }

  .pricing-page .pricing-plan-grid--dual .pricing-offer-card--lifetime .pricing-offer-body-card {
    width:100% !important;
    margin:0 !important;
    overflow:hidden !important;
    border:0 !important;
    border-radius:14px 14px 0 0 !important;
    background:radial-gradient(90% 62% at 92% -5%,rgba(255,255,255,.055),transparent 65%),linear-gradient(155deg,#181819 0%,#121213 100%) !important;
  }
}

/* Unified dark card surfaces without visual dividers. */
.pricing-page .pricing-plan-grid--dual .pricing-offer-card--monthly,
.pricing-page .pricing-plan-grid--dual .pricing-offer-card--monthly .pricing-offer-body-card,
.pricing-page .pricing-plan-grid--dual .pricing-offer-card--lifetime .pricing-offer-body-card {
  background:radial-gradient(110% 72% at 92% 0%,rgba(255,255,255,.045),transparent 58%),linear-gradient(155deg,#1a1a1c 0%,#111113 100%) !important;
}

.pricing-page .pricing-plan-grid--dual .pricing-monthly-banner {
  border-bottom:0 !important;
  background:linear-gradient(155deg,#1b1b1d 0%,#171719 100%) !important;
}

.pricing-page .pricing-plan-grid--dual .pricing-feature-disclosure,
.pricing-page .pricing-plan-grid--dual .pricing-offer-included.pricing-checklist {
  border-top:0 !important;
}

.pricing-page .pricing-plan-grid--dual .pricing-offer-price del {
  color:#fff !important;
  text-decoration-color:#fff !important;
}

.pricing-page .pricing-plan-grid--dual .pricing-offer-card--lifetime .pricing-offer-action.launch-offer__action > b,
.pricing-page .pricing-plan-grid--dual .pricing-offer-card--lifetime .pricing-offer-action.launch-offer__action > b svg,
.pricing-page .pricing-plan-grid--dual .pricing-offer-card--lifetime .pricing-offer-action.launch-offer__action > b path {
  color:#fff !important;
  fill:none !important;
  stroke:#fff !important;
}
