.hero {
  position: relative;
  display: grid;
  gap: var(--space-3xl);
  align-items: start;
  padding-block: clamp(32px, 6vw, 80px) var(--space-3xl);
}

.hero__title {
  font-size: clamp(40px, 4.2vw, 60px);
  font-weight: 400;
  line-height: 1.02;
  letter-spacing: -0.035em;
}

.hero__title-strong {
  display: block;
  font-weight: 600;
}

.hero__lede {
  max-inline-size: 50ch;
  margin-block-start: var(--space-xl);
  font-size: clamp(17px, 1.5vw, 19px);
}

.hero__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-sm);
  margin-block-start: var(--space-2xl);
}

.hero__note {
  max-inline-size: 48ch;
  margin-block-start: var(--space-xl);
  color: var(--color-text-faint);
  font-size: 14px;
}

.hero__demo {
  min-inline-size: 0;
}

@media (min-width: 940px) {
  .hero {
    grid-template-columns: minmax(0, 1fr) 430px;
    gap: clamp(40px, 5vw, 72px);
    align-items: center;
  }
}
