.price-opening {
  padding-bottom: 40px;
}
.price-opening-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr);
  align-items: center;
  gap: 64px;
}
.price-opening h1 {
  margin-top: 24px;
}
.price-intro {
  margin-top: 24px;
  max-width: 580px;
  color: var(--muted);
  font-size: 19px;
  line-height: 1.8;
}
.price-note {
  display: grid;
  gap: 20px;
}
.price-note > .badge {
  justify-self: start;
}
.price-note p {
  color: var(--muted);
}
.price-note .price-note-title {
  color: var(--text);
  font-size: 24px;
  font-weight: 700;
  line-height: 1.5;
}
.price-note-facts {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.price-note-facts .fact-pill {
  margin-top: 0;
  background: var(--panel);
}
.price-summary {
  margin-top: 64px;
}
.price-summary > p {
  max-width: 920px;
  margin-top: 20px;
  color: var(--muted);
}
.price-summary > .table-scroll {
  margin-top: 24px;
}
.price-summary > .table-note {
  font-size: 13px;
}
.price-plan-description {
  margin-top: 20px;
  color: var(--muted);
  line-height: 1.85;
}
.price-rule-note {
  margin-top: 28px;
}
.price-process-grid {
  display: grid;
  grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
  gap: 64px;
  align-items: start;
}
.price-payments {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 24px;
}
.price-process {
  margin: 0;
  padding-left: 1.6em;
}
.price-process li {
  padding-left: 12px;
}
.price-process li::marker {
  font-family: var(--font-mono);
  color: var(--accent-dark);
  font-weight: 700;
}
.price-process li + li {
  margin-top: 32px;
  padding-top: 28px;
  border-top: 1px solid var(--border);
}
.price-process h3 {
  margin-bottom: 12px;
}
.price-process p {
  color: var(--muted);
  line-height: 1.85;
}
.price-refund {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 64px;
  border-top: 2px solid var(--text);
  padding-top: 40px;
}
.price-refund h2 {
  margin-top: 20px;
}
.price-refund p {
  color: var(--muted);
  line-height: 1.85;
}
.price-refund h2 + p {
  margin-top: 20px;
}
.price-refund-links {
  display: flex;
  flex-wrap: wrap;
  gap: 16px 28px;
}
@media (max-width: 900px) {
  .price-opening-grid,
  .price-process-grid,
  .price-refund {
    grid-template-columns: minmax(0, 1fr);
    gap: 32px;
  }
  .price-process-grid > .section-heading {
    margin-bottom: 0;
  }
}
@media (max-width: 640px) {
  .price-opening {
    padding-top: 36px;
  }
  .price-intro {
    font-size: 17px;
  }
  .price-summary {
    margin-top: 48px;
  }
  .price-opening .cta-row {
    gap: 10px;
  }
  .price-opening .cta-row .btn {
    padding-inline: 20px;
  }
  .price-note .price-note-title {
    font-size: 21px;
  }
  .price-process li {
    padding-left: 5px;
  }
}