/* Pricing page presentation. Shared activation behavior remains in pricing-activation.css. */
.pricing-page {
  flex:none;
  width:100%;
  color:var(--gl-text-primary);
}

.pricing-page .home-section-heading {
  max-width:1200px;
  margin:0 auto 46px;
}

.pricing-page .home-section-heading p { margin:0; }

.pricing-page .home-eyebrow {
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:var(--primary-color);
  font-size:.78rem;
  font-weight:700;
  letter-spacing:.15em;
  text-transform:uppercase;
}

.pricing-page .home-eyebrow::before {
  content:"";
  width:20px;
  height:3px;
  border-radius:99px;
  background:var(--primary-color);
}

.pricing-page .canonical-pricing {
  --home-ink:var(--gl-text-primary);
  --home-muted:var(--gl-text-muted);
  --pricing-plate:#f8f8fa;
  --pricing-plate-2:#ebebeb;
  --pricing-sunk:color-mix(in srgb,var(--primary-color) 6%,#dce4f3);
  --pricing-well:inset 4px 5px 11px -3px rgba(35,45,60,.22),inset -2px -3px 6px rgba(255,255,255,.9);
  --pricing-clay:0 22px 38px -20px rgba(35,45,60,.36),0 8px 16px -10px rgba(35,45,60,.18),inset 2px 3px 4px rgba(255,255,255,.95),inset -3px -5px 9px rgba(35,45,60,.09);
  --pricing-gloss:linear-gradient(180deg,#fefeff 0%,#f5f8fd 46%,#e9effa 46.01%,#dee7f6 100%);
  --pricing-gloss-primary:linear-gradient(180deg,color-mix(in srgb,var(--primary-color) 35%,#fff) 0%,color-mix(in srgb,var(--primary-color) 62%,#fff) 46%,var(--primary-color) 46.01%,color-mix(in srgb,var(--primary-color) 88%,#111) 100%);
  --pricing-lip:inset 0 1px 0 #fff,inset 0 -1px 0 rgba(35,45,60,.12);
  padding-block:clamp(76px,9vw,120px);
  background:transparent;
  color:var(--home-ink);
}

.pricing-page .upgrade-pricing {
  padding:clamp(24px,4vw,48px) clamp(18px,3vw,36px);
}

.pricing-page .upgrade-pricing .canonical-pricing-toggle {
  margin-top:0;
  margin-bottom:26px;
}

.pricing-page .canonical-pricing-heading,
.pricing-page .canonical-pricing-toggle,
.pricing-page .canonical-pricing-grid {
  width:min(100% - 2rem,1200px);
  margin-inline:auto;
}

.pricing-page .canonical-pricing-heading h1,
.pricing-page .canonical-pricing-heading h2 {
  margin:10px 0 12px;
  font-size:clamp(2.15rem,4vw,3.35rem);
  font-weight:500;
  line-height:1.15;
  letter-spacing:-.035em;
}

.pricing-page .pricing-context-public .canonical-pricing-grid { padding-top:42px; }
.pricing-page .pricing-legal { margin-top:42px; }

.pricing-page .home-billing-toggle {
  display:flex;
  justify-content:center;
  align-items:center;
  gap:12px;
  margin-top:26px;
  color:var(--home-muted);
  font-size:.9rem;
}

.pricing-page .home-billing-toggle > b {
  padding:6px 10px;
  border-radius:999px;
  background:color-mix(in srgb,var(--primary-color) 13%,#fff);
  color:var(--primary-color);
  font-size:.72rem;
}

.pricing-page .home-switch {
  position:relative;
  display:inline-flex;
  width:74px;
  height:38px;
  border-radius:99px;
  background:var(--pricing-sunk);
  box-shadow:var(--pricing-well);
}

.pricing-page .home-switch input { position:absolute; opacity:0; pointer-events:none; }
.pricing-page .home-switch > span { width:100%; border-radius:99px; cursor:pointer; }
.pricing-page .home-switch > span::after {
  content:"";
  position:absolute;
  top:5px;
  left:5px;
  width:28px;
  height:28px;
  border-radius:99px;
  background:var(--pricing-gloss);
  box-shadow:0 4px 7px -4px rgba(35,45,60,.7),var(--pricing-lip);
  transition:transform .34s cubic-bezier(.19,.86,.22,1),background .34s linear,box-shadow .34s;
}

[dir="rtl"] .pricing-page .home-switch > span::after { left:auto; right:5px; }
.pricing-page .home-switch input:checked + span::after { transform:translateX(36px); background:var(--pricing-gloss-primary); }
[dir="rtl"] .pricing-page .home-switch input:checked + span::after { transform:translateX(-36px); }

.pricing-page .home-pricing-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  grid-auto-rows:1fr;
  gap:26px;
  align-items:stretch;
  max-width:1200px;
  margin-inline:auto;
}

.pricing-page .home-plan-card {
  box-sizing:border-box;
  position:relative;
  display:flex;
  flex-direction:column;
  width:100%;
  height:auto;
  min-width:0;
  min-height:620px;
  padding:38px 34px;
  border-radius:30px;
  background:linear-gradient(160deg,#fafcff,var(--pricing-plate) 46%,var(--pricing-plate-2));
  color:var(--home-ink);
  box-shadow:var(--pricing-clay);
}

.pricing-page .home-plan-card.is-featured {
  background:linear-gradient(160deg,#fafcff,var(--pricing-plate) 46%,var(--pricing-plate-2));
  box-shadow:0 34px 52px -24px color-mix(in srgb,var(--primary-color) 40%,transparent),0 12px 20px -12px rgba(35,45,60,.2),inset 2px 3px 5px rgba(255,255,255,.98),inset -4px -6px 12px color-mix(in srgb,var(--primary-color) 14%,transparent);
  transform:translateY(-14px);
}

.pricing-page .home-plan-name { margin:0; color:var(--home-muted); font-size:.72rem; font-weight:600; letter-spacing:.14em; text-transform:uppercase; }
.pricing-page .home-plan-card.is-featured .home-plan-name { color:var(--primary-color); }
.pricing-page .home-plan-cost { display:flex; align-items:baseline; gap:7px; min-height:58px; margin-top:16px; }
.pricing-page .home-plan-cost strong { font-size:3rem; font-weight:300; letter-spacing:-.035em; font-variant-numeric:tabular-nums; }
.pricing-page .home-plan-cost span,
.pricing-page .home-plan-desc { color:var(--home-muted); font-size:.82rem; }
.pricing-page .home-plan-desc { min-height:44px; margin:10px 0 0; }
.pricing-page .home-plan-cta { margin-top:22px; }
.pricing-page .home-plan-cta.gl-btn-neutral { box-shadow:var(--button-lift); }

.pricing-page .home-plan-total {
  align-self:flex-start;
  margin:12px 0 0;
  padding:7px 14px;
  border-radius:99px;
  background:var(--primary,#fed254);
  color:var(--gl-text-on-accent);
  box-shadow:0 8px 14px -10px rgba(35,45,60,.7),inset 0 1px 0 rgba(255,255,255,.55);
  font-size:.82rem;
  font-weight:650;
}

.pricing-page .home-plan-total.is-yearly {
  box-sizing:border-box;
  display:grid;
  align-self:stretch;
  gap:5px;
  min-height:62px;
  padding:10px 12px;
  border:1px solid color-mix(in srgb,var(--primary-color) 16%,var(--gl-border));
  border-radius:14px;
  background:color-mix(in srgb,var(--primary-color) 4%,var(--gl-surface-bg));
  color:var(--home-ink);
  box-shadow:none;
}

.pricing-page .pricing-yearly-total { display:block; font-size:.82rem; font-weight:750; line-height:1.35; }
.pricing-page .pricing-yearly-detail { display:flex; align-items:center; flex-wrap:wrap; gap:6px; color:var(--home-muted); font-size:.72rem; font-weight:500; line-height:1.35; }
.pricing-page .pricing-yearly-saving { display:inline-flex; align-items:center; min-height:22px; padding:2px 8px; border-radius:999px; background:color-mix(in srgb,var(--primary-color) 14%,var(--gl-surface-bg)); color:var(--primary-color); font-weight:750; white-space:nowrap; }

.pricing-page .home-plan-card ul { display:grid; gap:12px; margin:24px 0 0; padding:0; list-style:none; color:var(--home-muted); font-size:.93rem; }
.pricing-page .home-plan-card li { display:flex; align-items:flex-start; gap:11px; }
.pricing-page .home-plan-card li i { position:relative; display:block; flex:0 0 20px; width:20px; height:20px; margin-top:2px; border-radius:99px; background:linear-gradient(155deg,#a6e1cb,#7ccfb0); box-shadow:inset 0 -2px 3px rgba(20,80,62,.3),inset 0 2px 2px rgba(255,255,255,.6); color:transparent; font-size:0; }
.pricing-page .home-plan-card li i::before { content:none !important; }
.pricing-page .home-plan-card li i::after { content:""; position:absolute; left:6.5px; top:5px; width:5px; height:9px; border:solid #12433a; border-width:0 2px 2px 0; transform:rotate(42deg); }

.pricing-page .canonical-pricing-lifetime-grid {
  display:grid;
  grid-template-columns:minmax(0,1fr);
  width:min(100% - 2rem,1200px);
  margin:64px auto 0;
}

.pricing-page .home-plan-card.is-lifetime {
  --home-ink:var(--gl-text-inverse);
  --home-muted:color-mix(in srgb,var(--gl-text-inverse) 74%,transparent);
  display:grid;
  grid-template-columns:minmax(270px,.78fr) minmax(0,1.45fr);
  grid-template-rows:auto auto auto 1fr auto;
  column-gap:clamp(36px,6vw,88px);
  min-height:340px;
  padding:42px 48px;
  background:radial-gradient(circle at 82% -12%,transparent 0 92px,rgba(255,255,255,.11) 93px 95px,transparent 96px 146px,rgba(255,255,255,.075) 147px 149px,transparent 150px 202px,rgba(255,255,255,.045) 203px 205px,transparent 206px),linear-gradient(135deg,color-mix(in srgb,var(--primary-color) 88%,#2f56c9),#3a2190);
  color:var(--gl-text-inverse);
  box-shadow:0 34px 66px -38px color-mix(in srgb,var(--primary-color) 80%,transparent),0 18px 34px -24px rgba(35,45,60,.45);
}

.pricing-page .home-plan-card.is-lifetime .home-plan-name { grid-column:1; grid-row:1; }
.pricing-page .home-plan-card.is-lifetime .home-plan-cost { grid-column:1; grid-row:2; }
.pricing-page .home-plan-card.is-lifetime .canonical-pricing-offer-label { grid-column:1; grid-row:3; color:var(--gl-text-inverse); }
.pricing-page .home-plan-card.is-lifetime .home-plan-desc { grid-column:1; grid-row:4; min-height:0; }
.pricing-page .home-plan-card.is-lifetime .home-plan-cta { grid-column:1; grid-row:5; align-self:end; }
.pricing-page .home-plan-card.is-lifetime > ul { grid-column:2; grid-row:1 / 6; grid-template-columns:repeat(2,minmax(0,1fr)); align-content:center; gap:16px 28px; margin:0; padding-inline-start:clamp(0px,2vw,24px); border-inline-start:1px solid rgba(255,255,255,.2); }
.pricing-page .canonical-pricing-offer-label { margin:12px 0 0; color:var(--primary-color); font-weight:700; }

.pricing-page .canonical-pricing-lifetime-badge {
  position:absolute;
  z-index:2;
  inset-block-start:-19px;
  inset-inline-end:30px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:0;
  padding:7px 14px;
  border:0;
  border-radius:99px;
  background:var(--primary,#fed254);
  color:var(--gl-text-on-accent);
  box-shadow:0 8px 14px -10px rgba(35,45,60,.7),inset 0 1px 0 rgba(255,255,255,.55);
  font-size:.82rem;
  font-weight:650;
  letter-spacing:normal;
  text-transform:none;
}

.pricing-page .canonical-pricing-lifetime-badge span { color:inherit; font-size:inherit; line-height:1; text-shadow:none; }

html[data-public-theme="dark"] .pricing-page .home-plan-card:not(.is-lifetime) {
  --home-ink:var(--gl-text-primary);
  --home-muted:var(--gl-text-muted);
  background:var(--gl-surface-bg);
  color:var(--gl-text-primary);
  box-shadow:var(--gl-surface-shadow);
}

html[data-public-theme="dark"] .pricing-page .home-plan-card.is-featured .home-plan-name {
  color:var(--gl-text-primary);
}

@media (max-width:1100px) {
  .pricing-page .home-pricing-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .pricing-page .home-plan-card.is-featured { transform:none; }
}

@media (max-width:720px) {
  .pricing-page .home-section-heading { margin-bottom:32px; }
  .pricing-page .home-pricing-grid { grid-template-columns:1fr; }
  .pricing-page .home-billing-toggle { flex-wrap:wrap; }
  .pricing-page .home-plan-card.is-lifetime { display:flex; min-height:620px; padding:50px 34px 38px; }
  .pricing-page .home-plan-card.is-lifetime > ul { display:grid; grid-template-columns:1fr; gap:12px; margin:24px 0 0; padding:0; border:0; }
  .pricing-page .canonical-pricing-lifetime-badge { inset-inline-end:24px; }
}
