.pricing-main {
  position: relative;
}

.pricing-container {
  width: min(100% - 3rem, 76ch);
  margin-inline: auto;
}

.pricing-hero h1 {
  max-width: 18ch;
  font-size: clamp(2.25rem, 5.4vw, 4rem);
  line-height: 1.15;
  text-wrap: balance;
}

.pricing-hero .lead {
  max-width: 62ch;
}

.pricing-copy {
  color: var(--muted);
  line-height: 1.85;
  max-width: 66ch;
}

.tier-grid {
  display: grid;
  gap: var(--space-4);
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.tier-block {
  border: 1px solid var(--line);
  padding: var(--space-4);
  background: rgba(255, 255, 255, 0.012);
}

.tier-block-wide {
  grid-column: 1 / -1;
}

.tier-price,
.tier-regular {
  margin-top: var(--space-2);
  font-family: "Iowan Old Style", "Palatino Linotype", "Book Antiqua", Palatino, serif;
  font-size: clamp(1.4rem, 2.2vw, 1.9rem);
  line-height: 1.3;
}

.tier-regular {
  color: #d8dee5;
}

.tier-label {
  font-family: "IBM Plex Sans", "Segoe UI", Tahoma, sans-serif;
  font-size: 0.78rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--accent);
  margin-right: 0.4rem;
}

.tier-list {
  margin-top: var(--space-3);
}

.tier-list li {
  color: var(--muted);
  border-top: 1px solid var(--line);
  padding-top: var(--space-2);
}

.pricing-closing {
  border-top: 1px solid var(--line);
  margin-top: var(--space-7);
}

.pricing-actions {
  margin-top: var(--space-2);
}

@media (max-width: 900px) {
  .pricing-container {
    width: min(100% - 2rem, 76ch);
  }

  .pricing-hero h1 {
    max-width: 100%;
    font-size: clamp(2rem, 10vw, 3rem);
  }

  .tier-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 560px) {
  .pricing-container {
    width: min(100% - 1.25rem, 76ch);
  }

  .pricing-copy,
  .pricing-hero .lead,
  .tier-list li,
  .tier-block p {
    overflow-wrap: anywhere;
  }

  .pricing-actions {
    flex-direction: column;
    align-items: stretch;
  }

  .pricing-actions .button {
    width: 100%;
    text-align: center;
    white-space: normal;
    line-height: 1.35;
  }
}
