.plans-store {
  --store-ink: #181633;
  --store-muted: #4a4a63;
  --store-line: #deddee;
  --store-link: #4d348e;
  color-scheme: light;
  color: var(--store-ink);
  background: #fbfaff;
}
.plans-store .eyebrow { color: var(--store-link); }
.plans-store :is(a,button,.table-scroll):focus-visible,
.plans-store .segmented input:focus-visible + span { outline: 2px solid var(--store-link); }
.plans-store .plan-store-hero {
  padding-block: clamp(36px,6vw,88px);
  border-color: #ddd9f1;
  background: radial-gradient(ellipse at 93% 13%,#d1d8ff 0%,transparent 52%),
    radial-gradient(ellipse at 2% 90%,#dcf8fc 0%,transparent 52%), #f1ebff;
}
.plan-intro {
  display: grid;
  grid-template-columns: minmax(0,1.9fr) minmax(0,1fr);
  align-items: end;
  gap: clamp(26px,6vw,98px);
}
.plan-store-hero h1 {
  font-size: clamp(43px,6vw,84px);
  text-wrap: balance;
}
.plans-store .page-lead { color: var(--store-muted); }
.plan-store-hero .button.primary {
  color: #fff;
  background: #24204e;
}
.plan-store-hero .button.primary:hover { background: #473a75; }
.plan-store-hero .button.outline {
  color: var(--store-ink);
  background: #ffffff84;
  border-color: #8177a4;
}
.plan-store-hero .button.outline:hover { background: #fff; }
.plan-intro-note {
  max-width: 360px;
  padding: clamp(19px,3vw,35px);
  border: 1px solid #fff;
  border-radius: 24px;
  background: #ffffff94;
  box-shadow: 0 18px 44px #442b7b15;
}
.plan-intro-note > p:last-child {
  margin-top: 8px;
  color: var(--store-muted);
  font-size: 14px;
  line-height: 1.55;
}
.plan-start-price { color: var(--store-link); font-size: 15px; font-weight: 650; }
.plan-start-price strong {
  font-size: clamp(42px,5vw,65px);
  letter-spacing: -.075em;
  line-height: 1;
}
.plans-store .plans {
  padding-block: clamp(45px,6vw,78px);
  border: 0;
  background: linear-gradient(180deg,#f9f7ff,#fff);
}
.plans-store .section-head {
  margin-bottom: 12px;
}
.plans-store .section-head h2 {
  font-size: clamp(33px,4.6vw,61px);
  letter-spacing: -.065em;
}
.plans-store .section-head h2 + p {
  margin-top: 9px;
  color: var(--store-muted);
}
.plans-store .segmented { background: #fff; border-color: #c6bddf; }
.plans-store .segmented span { color: #392e5d; }
.plans-store .segmented input:checked + span { color: #fff; background: #3f2b72; }
.billing-explainer {
  margin-bottom: 24px;
  color: var(--store-muted);
  font-size: 13px;
  line-height: 1.55;
}
.plans-store .plan {
  --card-ink: #07516b;
  --card-tint: #d4f6ff;
  --card-line: #acdce9;
  padding: clamp(15px,2.2vw,28px);
  border-color: var(--card-line);
  background: linear-gradient(150deg,var(--card-tint),#fff 88%);
  box-shadow: 0 9px 25px #3428660a;
}
.plans-store [data-plan-theme="magnetar"] { --card-ink: #50308f; --card-tint: #e9dcff; --card-line: #cfb9f4; }
.plans-store [data-plan-theme="stellar"] { --card-ink: #70400b; --card-tint: #ffeccc; --card-line: #e7c47f; }
.plans-store [data-plan-theme="supermassive"] { --card-ink: #823564; --card-tint: #ffe2f1; --card-line: #e9bad4; }
.plans-store .plan::before { background: linear-gradient(90deg,transparent,#fff,transparent); }
.plans-store .plan-symbol {
  border-color: rgb(var(--plan-rgb) / .6);
  background: radial-gradient(ellipse at 23% 12%,rgb(var(--plan-rgb) / .28),transparent 85%),#221b3c;
}
.plans-store .plan-type,
.plans-store .plan .amount { color: var(--card-ink); }
.plans-store .plan-type { font-size: 10px; font-weight: 700; }
.plans-store .plan .allowance { border-color: var(--card-line); }
.plans-store :is(.unit,.billing-note,.plan-desc,.fine-print) { color: var(--store-muted); }
.plans-store .plan .plan-details {
  min-height: 44px;
  border-color: var(--card-ink);
  color: var(--card-ink);
  background: #ffffff78;
}
.plans-store .plan .plan-details:hover { background: var(--card-tint); }
.plans-store .plan.featured .plan-details { color: #fff; background: var(--card-ink); }
.plans-store .plan.featured .plan-details:hover { background: #583108; }
.plans-store .fine-print { font-size: 13px; }
.plans-store .plan-compare { border-top: 1px solid var(--store-line); }
.plans-store .plan-compare h2,
.plans-store .plan-help h2 {
  color: var(--store-ink);
  font-size: clamp(31px,4.3vw,57px);
  font-weight: 560;
  letter-spacing: -.06em;
  line-height: 1.06;
}
.plans-store .plan-compare p { color: var(--store-muted); }
.plans-store .table-scroll { border-color: var(--store-line); }
.plans-store .plan-table { color: var(--store-ink); background: #fff; }
.plans-store .plan-table caption { color: var(--store-muted); background: #f2ecfc; }
.plans-store .plan-table :is(th,td) { border-color: var(--store-line); }
.plans-store .plan-table th { color: var(--store-link); background: #f9f5ff; }
.plan-help {
  padding-block: clamp(43px,6vw,76px);
  background: linear-gradient(119deg,#e9e3ff,#e3f8ff);
}
.plan-help-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 16px;
  margin-top: 27px;
}
.plan-help-grid article {
  padding: clamp(20px,2.6vw,31px);
  border: 1px solid #fff;
  border-radius: 20px;
  background: #ffffffa3;
}
.plan-help-grid article > span { color: var(--store-link); font: 700 12px ui-monospace, monospace; }
.plan-help-grid h3 {
  margin-top: 10px;
  font-size: clamp(18px,2.1vw,27px);
  font-weight: 630;
  letter-spacing: -.036em;
}
.plan-help-grid p { margin-block: 10px 17px; color: var(--store-muted); font-size: 14px; line-height: 1.65; }
.plan-help-grid a {
  display: block;
  margin-top: 8px;
  color: var(--store-link);
  font-size: 14px;
  font-weight: 650;
  text-decoration: underline;
  text-underline-offset: 4px;
}
@media (max-width: 720px) {
  .plan-intro { grid-template-columns: 1fr; }
  .plan-intro-note { max-width: none; }
  .plan-help-grid { grid-template-columns: 1fr; }
}
@media (max-width: 480px) {
  .plans-store .plan-grid { grid-template-columns: 1fr; gap: 14px; }
  .plans-store .plan { padding: 20px; }
  .plans-store .plan h3 { min-block-size: 0; }
  .plans-store .plan h3 span { display: inline; }
  .plans-store :is(.billing-note,.plan-desc,.unit) { font-size: 13px; }
}
