/* Pricing page styles are intentionally isolated from the shared site system. */
.pricing-page {
  --pricing-copper: #9a6443;
  --pricing-copper-light: #d8b49a;
  --pricing-mist: #eef2f4;
  --pricing-soft: #faf8f5;
  --pricing-shadow: 0 1.5rem 4rem rgba(7, 26, 45, .1);
  background: var(--white);
}

.pricing-page main section[id] { scroll-margin-top: 9rem; }

/* Hero */
.pricing-page .pricing-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: clamp(4.25rem, 8vw, 7.4rem) 0 clamp(3.75rem, 7vw, 6rem);
  border-bottom: 0;
  background:
    radial-gradient(circle at 80% 10%, rgba(208, 161, 126, .18), transparent 31rem),
    linear-gradient(125deg, #071a2d 0%, #0b2238 58%, #102d48 100%);
}

.pricing-page .pricing-hero::before {
  position: absolute;
  z-index: -1;
  right: -8rem;
  bottom: -12rem;
  width: 32rem;
  height: 32rem;
  border: 1px solid rgba(255, 255, 255, .09);
  border-radius: 50%;
  box-shadow: 0 0 0 5rem rgba(255, 255, 255, .025), 0 0 0 10rem rgba(255, 255, 255, .018);
  content: "";
}

.pricing-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(19rem, .52fr);
  gap: clamp(2.5rem, 7vw, 6.5rem);
  align-items: end;
}

.pricing-hero-copy { min-width: 0; }
.pricing-page .pricing-hero h1 { max-width: 20ch; font-size: clamp(3.25rem, 6.5vw, 6.35rem); text-wrap: balance; }
.pricing-page .pricing-hero .lede { max-width: 44rem; color: #d5dde4; font-size: clamp(1.08rem, 1.65vw, 1.3rem); }
.pricing-page .pricing-hero .actions { margin-top: 1.8rem; }

.pricing-hero-quote {
  min-width: 0;
  padding: clamp(1.6rem, 3.5vw, 2.35rem);
  border: 1px solid rgba(255, 255, 255, .24);
  border-top: .25rem solid var(--pricing-copper-light);
  border-radius: .55rem;
  color: var(--white);
  background: rgba(255, 255, 255, .075);
  box-shadow: 0 1.5rem 4rem rgba(0, 0, 0, .2);
  backdrop-filter: blur(14px);
}

.pricing-hero-label,
.pricing-hero-cadence,
.pricing-hero-price,
.pricing-tax-note { margin: 0; }

.pricing-hero-label {
  color: #e5c4ad;
  font-size: .72rem;
  font-weight: 850;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.pricing-hero-price {
  margin-top: .65rem;
  font-family: "Helvetica Neue", Arial, system-ui, sans-serif;
  font-size: clamp(4.2rem, 7vw, 6.2rem);
  line-height: .95;
  letter-spacing: -.065em;
}

.pricing-hero-price span {
  margin-right: .2rem;
  font-family: "Helvetica Neue", Arial, sans-serif;
  font-size: .24em;
  font-weight: 800;
  letter-spacing: .02em;
  vertical-align: top;
}

.pricing-hero-cadence { margin-top: .55rem; color: #c5d0d8; font-size: .78rem; font-weight: 700; }

.pricing-hero-facts {
  display: grid;
  gap: .7rem;
  margin: 1.5rem 0 0;
  padding: 1.25rem 0 0;
  border-top: 1px solid rgba(255, 255, 255, .18);
  list-style: none;
}

.pricing-hero-facts li {
  position: relative;
  padding-left: 1.35rem;
  color: #e4e9ed;
  font-size: .84rem;
  line-height: 1.45;
}

.pricing-hero-facts li::before {
  position: absolute;
  top: .12rem;
  left: 0;
  color: var(--pricing-copper-light);
  content: "✓";
  font-weight: 900;
}

.pricing-tax-note { margin-top: 1.2rem; color: #aebdca; font-size: .72rem; line-height: 1.5; }

/* In-page navigation */
.pricing-subnav {
  position: sticky;
  z-index: 35;
  top: 4.7rem;
  border-bottom: 1px solid var(--line);
  background: rgba(255, 255, 255, .96);
  box-shadow: 0 .45rem 1.4rem rgba(7, 26, 45, .045);
  backdrop-filter: blur(14px);
}

.pricing-subnav-inner {
  display: flex;
  align-items: center;
  gap: clamp(1.1rem, 3vw, 2.25rem);
  overflow-x: auto;
  scrollbar-width: thin;
}

.pricing-subnav a {
  flex: 0 0 auto;
  padding: .95rem 0 .85rem;
  border-bottom: 2px solid transparent;
  color: var(--navy);
  font-size: .73rem;
  font-weight: 800;
  text-decoration: none;
  white-space: nowrap;
}

.pricing-subnav a:hover { border-bottom-color: var(--brown); color: var(--brown-dark); }

/* Shared pricing sections */
.pricing-section { padding: clamp(4.5rem, 8vw, 7.25rem) 0; }
.pricing-section-alt { border-block: 1px solid var(--line); background: var(--cream); }

.pricing-section-head {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(18rem, .55fr);
  gap: clamp(2rem, 6vw, 5rem);
  align-items: end;
  margin-bottom: clamp(2.25rem, 5vw, 4rem);
}

.pricing-section-head > div { min-width: 0; }
.pricing-section-head h2 { max-width: 17ch; }
.pricing-section-head > p { margin: 0 0 .3rem; color: var(--muted); line-height: 1.7; }
.pricing-section-head-wide { grid-template-columns: minmax(0, 1fr) minmax(20rem, .65fr); }
.pricing-section-head-single { display: block; margin-bottom: clamp(1.75rem, 4vw, 2.75rem); }
.pricing-section-head-single h2 { max-width: none; font-size: clamp(2.75rem, 4.15vw, 3.8rem); }
.pricing-guides-section { padding-bottom: clamp(2.75rem, 4.5vw, 4.25rem); }
.pricing-questions-section { padding-top: clamp(2.75rem, 4.5vw, 4.25rem); }

/* Website Launch */
.launch-card {
  display: grid;
  grid-template-columns: minmax(18rem, .42fr) minmax(0, 1fr);
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: .65rem;
  background: var(--white);
  box-shadow: var(--pricing-shadow);
}

.launch-card-summary {
  display: flex;
  min-width: 0;
  flex-direction: column;
  justify-content: center;
  padding: clamp(1.75rem, 4vw, 3rem);
  color: var(--white);
  background: linear-gradient(145deg, var(--brown) 0%, var(--brown-dark) 100%);
}

.launch-card-kicker,
.launch-card-price,
.launch-card-fineprint { margin: 0; }

.launch-card-kicker {
  color: #f0d7c5;
  font-size: .72rem;
  font-weight: 850;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.launch-card-price {
  display: flex;
  align-items: flex-start;
  align-self: flex-start;
  flex-direction: column;
  gap: .4rem;
  max-width: 100%;
  margin-top: .8rem;
  font-family: "Helvetica Neue", Arial, system-ui, sans-serif;
  font-size: clamp(3.2rem, 5vw, 5rem);
  line-height: 1;
  letter-spacing: -.05em;
  white-space: nowrap;
}

.launch-card-price span {
  display: inline-block;
  flex: 0 0 auto;
  color: #f0d7c5;
  font-family: "Helvetica Neue", Arial, sans-serif;
  font-size: .18em;
  font-weight: 800;
  line-height: 1;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.launch-card-summary > p:nth-of-type(3) {
  max-width: 34ch;
  margin: 1.45rem 0 0;
  color: #f1e8e2;
  font-size: .94rem;
  line-height: 1.55;
}

.launch-card-summary .button { margin-top: 1.4rem; }

.launch-card-fineprint {
  max-width: 38ch;
  margin-top: 1.2rem;
  padding-top: 1rem;
  border-top: 1px solid rgba(255, 255, 255, .18);
  color: #e1c9ba;
  font-size: .7rem;
  line-height: 1.5;
}

.launch-card-details {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0;
  min-width: 0;
}

.launch-detail-block { min-width: 0; padding: clamp(1.75rem, 4vw, 3rem); }
.launch-detail-block + .launch-detail-block { border-left: 1px solid var(--line); }
.launch-detail-block h3 { max-width: 15ch; color: var(--navy); font-size: clamp(1.55rem, 2.2vw, 2rem); }

.pricing-check-list,
.pricing-plain-list,
.pricing-mini-list,
.scope-card ul {
  display: grid;
  gap: .72rem;
  margin: 1.25rem 0 0;
  padding: 0;
  list-style: none;
}

.pricing-check-list li,
.pricing-plain-list li,
.pricing-mini-list li,
.scope-card li {
  position: relative;
  min-width: 0;
  padding-left: 1.35rem;
  color: #3b4e5f;
  font-size: .86rem;
  line-height: 1.55;
  overflow-wrap: anywhere;
}

.pricing-check-list li::before {
  position: absolute;
  top: .07rem;
  left: 0;
  color: var(--success);
  content: "✓";
  font-weight: 900;
}

.pricing-plain-list li::before,
.pricing-mini-list li::before,
.scope-card li::before {
  position: absolute;
  top: .62em;
  left: .15rem;
  width: .32rem;
  height: .32rem;
  border-radius: 50%;
  background: var(--pricing-copper);
  content: "";
}

.scope-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
  margin-top: 1rem;
}

.scope-card {
  min-width: 0;
  padding: clamp(1.5rem, 3vw, 2.35rem);
  border: 1px solid var(--line);
  border-radius: .55rem;
  background: var(--pricing-soft);
}

.scope-card-limits { background: var(--pricing-mist); }
.scope-label { margin: 0 0 .8rem; color: var(--brown); font-size: .68rem; font-weight: 850; letter-spacing: .13em; text-transform: uppercase; }
.scope-card h3 { max-width: 24ch; font-size: clamp(1.45rem, 2.4vw, 2rem); }

.revision-note {
  display: grid;
  grid-template-columns: minmax(10rem, .3fr) minmax(0, 1fr);
  gap: 1.25rem 2rem;
  align-items: start;
  margin-top: 1rem;
  padding: 1.4rem clamp(1.25rem, 3vw, 2rem);
  border-left: .25rem solid var(--brown);
  color: var(--navy);
  background: #f7f2ee;
}

.revision-note strong { font-size: .82rem; }
.revision-note p { margin: 0; color: var(--muted); font-size: .82rem; line-height: 1.6; }

/* Add-ons */
.addon-detail-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }

.addon-detail-card {
  display: flex;
  min-width: 0;
  min-height: 100%;
  flex-direction: column;
  padding: clamp(1.4rem, 3vw, 2rem);
  border: 1px solid var(--line);
  border-radius: .55rem;
  background: var(--white);
  box-shadow: 0 .9rem 2.5rem rgba(7, 26, 45, .055);
  transition: border-color .18s ease, transform .18s ease, box-shadow .18s ease;
}

.addon-detail-card:hover { border-color: rgba(112, 69, 44, .45); box-shadow: 0 1.25rem 3rem rgba(7, 26, 45, .09); transform: translateY(-.2rem); }
.addon-detail-head { display: flex; min-height: 4rem; align-items: flex-start; justify-content: space-between; gap: 1rem; }
.addon-detail-number { margin: 0; color: #657787; font-size: .67rem; font-weight: 850; letter-spacing: .13em; }
.addon-detail-price { margin: 0; color: var(--brown-dark); font-family: "Helvetica Neue", Arial, system-ui, sans-serif; font-size: 1.7rem; line-height: 1; text-align: right; }
.addon-detail-price span { display: block; margin-top: .35rem; font-family: "Helvetica Neue", Arial, sans-serif; font-size: .38em; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; }
.addon-detail-card h3 { margin-top: .8rem; font-size: clamp(1.55rem, 2.4vw, 2.05rem); }
.addon-detail-for { min-height: 4.8rem; color: var(--muted); font-size: .88rem; line-height: 1.6; }
.addon-detail-card .pricing-mini-list { margin-top: auto; padding-top: 1.1rem; border-top: 1px solid var(--line); }

/* Ongoing plans */
.cadence-callout {
  padding: 1.2rem 1.3rem;
  border: 1px solid rgba(112, 69, 44, .24);
  border-radius: .45rem;
  background: #faf4f0;
}

.cadence-callout strong,
.cadence-callout span { display: block; }
.cadence-callout strong { color: var(--brown-dark); font-size: .83rem; }
.cadence-callout span { margin-top: .35rem; color: var(--muted); font-size: .77rem; line-height: 1.5; }

.plan-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; align-items: stretch; }

.plan-card {
  --plan-accent: #8a6a57;
  --plan-head: var(--pricing-soft);
  --plan-surface: var(--white);
  --plan-limit-surface: #fbfbfa;
  display: flex;
  min-width: 0;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid var(--line);
  border-top: .32rem solid var(--plan-accent);
  border-radius: .6rem;
  background: var(--plan-surface);
  box-shadow: 0 1rem 3rem rgba(7, 26, 45, .065);
  transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.plan-card:hover { box-shadow: 0 1.35rem 3.3rem rgba(7, 26, 45, .11); transform: translateY(-.18rem); }
.plan-card-head {
  display: flex;
  min-height: 15.4rem;
  align-items: flex-start;
  flex-direction: column;
  padding: 1.4rem 1.55rem 1.35rem;
  border-bottom: 1px solid var(--line);
  background: var(--plan-head);
}
.plan-badge {
  display: inline-flex;
  min-height: 2rem;
  width: fit-content;
  margin: 0 0 .85rem;
  align-items: center;
  justify-content: center;
  padding: .15rem .72rem;
  border: 1px solid color-mix(in srgb, var(--plan-accent) 42%, transparent);
  border-radius: 999px;
  color: var(--plan-accent);
  background: rgba(255, 255, 255, .7);
  font-size: .58rem;
  font-weight: 900;
  letter-spacing: .1em;
  line-height: 1;
  text-transform: uppercase;
}
.plan-kicker { min-height: 1rem; margin: 0 0 .55rem; color: var(--brown); font-size: .66rem; font-weight: 850; letter-spacing: .13em; line-height: 1.2; text-transform: uppercase; }
.plan-card h3 { display: flex; min-height: 2.75rem; align-items: flex-start; font-size: clamp(1.65rem, 2.8vw, 2.25rem); line-height: 1.08; }
.plan-price { margin: 1rem 0 0; color: var(--navy); font-family: "Helvetica Neue", Arial, system-ui, sans-serif; font-size: clamp(2.15rem, 3.5vw, 3.1rem); line-height: 1; letter-spacing: -.045em; }
.plan-price > span { font-family: "Helvetica Neue", Arial, sans-serif; font-size: .28em; font-weight: 850; letter-spacing: 0; vertical-align: top; }
.plan-price small { display: inline; margin-left: .25rem; font-family: "Helvetica Neue", Arial, sans-serif; font-size: .27em; font-weight: 800; letter-spacing: 0; white-space: nowrap; }
.plan-cancel { margin: .7rem 0 0; color: var(--plan-accent); font-size: .65rem; font-weight: 900; letter-spacing: .07em; text-transform: uppercase; }

.plan-for {
  min-height: 7.1rem;
  margin: 0;
  padding: 1.15rem 1.55rem;
  border-bottom: 1px solid var(--line);
  color: var(--muted);
  font-size: .8rem;
  line-height: 1.55;
}

.plan-for strong { color: var(--navy); }
.plan-card-body { flex: 1 1 auto; padding: 1.35rem 1.55rem; }
.plan-card-body h4 { margin: 0; color: var(--navy); font-size: .7rem; letter-spacing: .12em; text-transform: uppercase; }
.plan-card-body h4:not(:first-child) { margin-top: 1.4rem; }
.plan-launch-value { margin: .65rem 0 0; color: var(--muted); font-size: .76rem; line-height: 1.55; }
.plan-card-body .pricing-check-list,
.plan-card-body .pricing-plain-list { margin-top: .9rem; }

.plan-limit {
  margin: 0;
  padding: 1.1rem 1.55rem 1.3rem;
  border-top: 1px solid var(--line);
  color: var(--muted);
  background: var(--plan-limit-surface);
  font-size: .72rem;
  line-height: 1.55;
}

.plan-card-self {
  --plan-accent: #687782;
  --plan-head: #f1f2f2;
  --plan-surface: #fbfbfa;
  --plan-limit-surface: #f1f2f2;
}

.plan-card-essential {
  --plan-accent: #49758a;
  --plan-head: #e9f3f6;
  --plan-surface: #fbfdfe;
  --plan-limit-surface: #eef6f8;
  border-color: #a8c2cd;
}

.plan-card-basic {
  --plan-accent: #9b552d;
  --plan-head: #f8e6d9;
  --plan-surface: #fffaf6;
  --plan-limit-surface: #f8ece3;
  position: relative;
  z-index: 1;
  border: 2px solid #bd7950;
  border-top-width: .42rem;
  box-shadow: 0 1.35rem 3.5rem rgba(112, 69, 44, .18);
}

.plan-card-basic .plan-badge { color: var(--white); background: var(--plan-accent); }
.plan-card-basic .plan-kicker { color: #814322; }

.plan-card-search {
  --plan-accent: #3e705d;
  --plan-head: #e6f1ec;
  --plan-surface: #f9fcfa;
  --plan-limit-surface: #edf6f1;
  border-color: #9bbdaf;
}

.plan-card-lead {
  --plan-accent: #e0b08d;
  --plan-head: #54382d;
  --plan-surface: #3c2a23;
  --plan-limit-surface: #30211c;
  border-color: #98694e;
  color: var(--white);
  background: linear-gradient(150deg, #4c342a 0%, #36251f 75%);
  box-shadow: 0 1.25rem 3.5rem rgba(55, 32, 23, .22);
}

.plan-card-lead .plan-badge { border-color: rgba(224, 176, 141, .5); color: #f2ceb4; background: rgba(255, 255, 255, .08); }
.plan-card-lead .plan-card-head,
.plan-card-lead .plan-for,
.plan-card-lead .plan-limit { border-color: rgba(255, 255, 255, .14); }
.plan-card-lead .plan-kicker { color: #e6b995; }
.plan-card-lead h3,
.plan-card-lead .plan-price,
.plan-card-lead .plan-for strong,
.plan-card-lead .plan-card-body h4 { color: var(--white); }
.plan-card-lead .plan-for,
.plan-card-lead .pricing-check-list li,
.plan-card-lead .plan-limit { color: #e5d9d2; }
.plan-card-lead .pricing-check-list li::before { color: #e6b995; }

.plan-card-featured {
  --plan-accent: #e4b18c;
  --plan-head: #102b45;
  --plan-surface: #071a2d;
  --plan-limit-surface: #061524;
  border-color: #c9946e;
  border-top-width: .5rem;
  color: var(--white);
  background:
    radial-gradient(circle at 82% 8%, rgba(228, 177, 140, .18), transparent 14rem),
    linear-gradient(145deg, #0c2943 0%, #071a2d 70%);
  box-shadow: 0 1.5rem 4rem rgba(7, 26, 45, .3), inset 0 0 0 1px rgba(228, 177, 140, .12);
}

.plan-card-featured .plan-card-head,
.plan-card-featured .plan-limit { border-color: var(--line-light); color: var(--white); }
.plan-card-featured .plan-for,
.plan-card-featured .plan-card-body { border-color: var(--line-light); }
.plan-card-featured .plan-badge { border-color: rgba(228, 177, 140, .52); color: #f4cfb4; background: rgba(228, 177, 140, .1); }
.plan-card-featured .plan-kicker { color: #d7ae91; }
.plan-card-featured h3,
.plan-card-featured .plan-price,
.plan-card-featured .plan-for strong,
.plan-card-featured .plan-card-body h4 { color: var(--white); }
.plan-card-featured .plan-for,
.plan-card-featured .pricing-check-list li,
.plan-card-featured .plan-limit { color: #c7d1d9; }
.plan-card-featured .pricing-check-list li::before { color: #dfb79b; }

.support-action-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
  margin-top: 1rem;
  padding: 1.35rem 1.5rem;
  border: 1px solid var(--line);
  border-radius: .45rem;
  background: var(--pricing-soft);
}

.support-action-row p { max-width: 47rem; margin: 0; color: var(--muted); font-size: .84rem; }
.support-action-row .button { flex: 0 0 auto; }

/* Comparison and policies */
.comparison-table-wrap {
  overflow-x: auto;
  border: 1px solid var(--line);
  border-radius: .55rem;
  background: var(--white);
  box-shadow: 0 .9rem 2.5rem rgba(7, 26, 45, .05);
  scrollbar-color: var(--brown) var(--cream);
}

.comparison-table-wrap:focus-visible { outline-color: var(--brown); }

.pricing-comparison-table {
  width: 100%;
  min-width: 58rem;
  border-collapse: collapse;
  text-align: left;
}

.pricing-comparison-table th,
.pricing-comparison-table td {
  padding: 1rem 1.15rem;
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  font-size: .78rem;
  line-height: 1.5;
  vertical-align: top;
}

.pricing-comparison-table tr > :last-child { border-right: 0; }
.pricing-comparison-table tbody tr:last-child > * { border-bottom: 0; }
.pricing-comparison-table thead th { color: var(--white); background: var(--navy); font-size: .65rem; letter-spacing: .1em; text-transform: uppercase; }
.pricing-comparison-table tbody th { min-width: 9.5rem; color: var(--navy); background: #faf8f5; }
.pricing-comparison-table tbody td:nth-child(2) { min-width: 9rem; color: var(--brown-dark); font-weight: 800; white-space: nowrap; }
.pricing-comparison-table tbody tr:hover > * { background: #f6f1ed; }
.comparison-scroll-note { display: none; color: var(--muted); font-size: .72rem; }

.policy-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; margin-top: 1rem; }
.policy-card { min-width: 0; padding: clamp(1.5rem, 3vw, 2.3rem); border: 1px solid var(--line); border-radius: .55rem; background: var(--white); }
.policy-card h3 { max-width: 20ch; font-size: clamp(1.55rem, 2.4vw, 2.1rem); }
.policy-card a { overflow-wrap: anywhere; }
.text-link { display: inline-flex; margin-top: 1.4rem; color: var(--brown-dark); font-size: .78rem; font-weight: 850; }

/* Custom scope */
.separate-scope-section {
  padding: clamp(4rem, 6vw, 5.5rem) 0;
  color: var(--white);
  background:
    linear-gradient(115deg, rgba(112, 69, 44, .25), transparent 42%),
    var(--navy);
}

.separate-scope-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(27rem, .85fr); gap: clamp(2rem, 6vw, 5rem); align-items: center; }
.separate-scope-section .eyebrow { color: #d7ae91; }
.separate-scope-section h2 { max-width: 18ch; }
.separate-scope-section p { color: #c5d0d8; line-height: 1.7; }
.separate-scope-grid > div:last-child { width: min(100%, 38rem); justify-self: end; }
.separate-scope-section .actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem; margin-top: 1.4rem; }
.separate-scope-section .actions .button { width: 100%; margin-top: 0; padding-inline: 1rem; text-align: center; }

/* FAQ and closing CTA */
.pricing-faq details p { max-width: 50rem; line-height: 1.7; }
.pricing-page .cta-band .eyebrow { margin-bottom: .75rem; color: #f3d6bf; }
.pricing-page .cta-row h2 { max-width: 19ch; }

@media (max-width: 1100px) {
  .plan-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .plan-for { min-height: 6rem; }
}

@media (max-width: 900px) {
  .pricing-hero-grid,
  .pricing-section-head,
  .pricing-section-head-wide,
  .launch-card,
  .separate-scope-grid { grid-template-columns: 1fr; }

  .pricing-hero-grid { gap: 2.4rem; }
  .pricing-page .pricing-hero h1 { max-width: 20ch; }
  .pricing-hero-quote { width: min(100%, 34rem); }
  .pricing-section-head { gap: 1.2rem; align-items: start; }
  .pricing-section-head > p { max-width: 44rem; }
  .launch-card-summary .button { margin-top: 1.4rem; }
  .separate-scope-grid { gap: 1.75rem; align-items: start; }
  .separate-scope-grid > div:last-child { width: 100%; max-width: 44rem; justify-self: start; }
  .addon-detail-grid { grid-template-columns: 1fr; }
  .addon-detail-for { min-height: 0; }
  .addon-detail-card .pricing-mini-list { margin-top: 1.25rem; }
}

@media (max-width: 760px) {
  .launch-card-details,
  .scope-grid,
  .policy-grid { grid-template-columns: 1fr; }
  .launch-detail-block + .launch-detail-block { border-top: 1px solid var(--line); border-left: 0; }
  .revision-note { grid-template-columns: 1fr; gap: .55rem; }
  .plan-grid { grid-template-columns: 1fr; }
  .plan-card-head { min-height: 0; }
  .plan-card h3 { min-height: 0; }
  .plan-for { min-height: 0; }
  .support-action-row { align-items: stretch; flex-direction: column; gap: .85rem; padding: 1rem; }
  .support-action-row p { line-height: 1.5; }
  .support-action-row .button { width: 100%; }
  .comparison-scroll-note { display: block; margin: .65rem 0 0; line-height: 1.4; }
  .comparison-scroll-note + .policy-grid { margin-top: .8rem; }
}

@media (max-width: 560px) {
  .pricing-page .pricing-hero { padding-block: 3.35rem 3rem; }
  .pricing-page .pricing-hero h1 { font-size: clamp(2.3rem, 10.3vw, 3.25rem); }
  .pricing-hero-quote { padding: 1.35rem; }
  .pricing-hero-price { font-size: 4.15rem; }
  .separate-scope-section .actions { grid-template-columns: 1fr; }
  .separate-scope-section .actions .button { width: 100%; }
  .pricing-subnav { top: 4.35rem; padding-block: .55rem; }
  .pricing-subnav-inner {
    width: 100%;
    flex-wrap: nowrap;
    justify-content: flex-start;
    gap: .55rem;
    padding-inline: 1rem;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-padding-inline: 1rem;
    scroll-snap-type: inline proximity;
  }
  .pricing-subnav a {
    display: inline-flex;
    min-height: 2.8rem;
    align-items: center;
    justify-content: center;
    padding: .7rem 1rem;
    border: 1px solid transparent;
    border-radius: 999px;
    font-size: .77rem;
    line-height: 1;
    scroll-snap-align: start;
  }
  .pricing-subnav a:nth-child(1) { border-color: var(--navy); color: var(--white); background: var(--navy); }
  .pricing-subnav a:nth-child(2) { border-color: #dfbea8; color: #6d3d24; background: #f7e9df; }
  .pricing-subnav a:nth-child(3) { border-color: #bfd2dc; color: #234f63; background: #e9f2f6; }
  .pricing-subnav a:nth-child(4) { border-color: #d7c7b9; color: #674a38; background: #f5f0eb; }
  .pricing-subnav a:nth-child(5) { border-color: #cbd2d7; color: #344b5c; background: #edf1f3; }
  .pricing-subnav a:hover { border-bottom-color: currentColor; }
  .pricing-page main section[id] { scroll-margin-top: 9.25rem; }
  .pricing-section { padding-block: 3.75rem; }
  .pricing-section-head { margin-bottom: 2rem; }
  .pricing-section-head h2 { font-size: clamp(2.35rem, 11vw, 3.25rem); }
  .pricing-section-head-single { margin-bottom: 1.65rem; }
  .pricing-section-head-single h2 { font-size: clamp(2.25rem, 10vw, 3rem); }
  .pricing-guides-section { padding-bottom: 2.5rem; }
  .pricing-questions-section { padding-top: 2.5rem; }
  .launch-card-summary,
  .launch-detail-block,
  .scope-card,
  .addon-detail-card,
  .policy-card { padding: 1.3rem; }
  .plan-card-head,
  .plan-for,
  .plan-card-body,
  .plan-limit { padding-inline: 1.3rem; }
  .addon-detail-head { min-height: 3.3rem; }
  .addon-detail-price { font-size: 1.5rem; }
  .separate-scope-section { padding-block: 3.75rem; }
}

@media (max-width: 350px) {
  .pricing-hero-price { font-size: 3.65rem; }
  .launch-card-price { font-size: 3rem; }
  .plan-price { font-size: 2.1rem; }
}
