.article {
  width: min(760px, calc(100% - 36px));
  margin: 0 auto;
  padding: clamp(42px, 7vw, 82px) 0;
}

.article h1 {
  font-size: clamp(2rem, 5vw, 3.8rem);
  line-height: 1.02;
}

.article h2 {
  margin-top: 34px;
  font-size: clamp(1.35rem, 2.5vw, 2rem);
}

.article .lead {
  color: var(--muted);
  font-size: 1.18rem;
}

.article-cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-top: 38px;
  padding: 22px;
  background: var(--soft);
  border: 1px solid var(--line);
  border-radius: var(--radius);
}

@media (max-width: 640px) {
  .article-cta {
    align-items: stretch;
    flex-direction: column;
  }
}
