.legal-hero {
  padding: 150px clamp(20px, 6vw, 78px) 54px;
  text-align: center;
}

.legal-hero h1 {
  margin: 14px auto 16px;
  font-size: clamp(54px, 9vw, 104px);
  line-height: 0.92;
}

.legal-subtitle {
  color: var(--muted);
  font-size: clamp(16px, 2vw, 19px);
  line-height: 1.6;
}

.legal-container {
  padding: 0 clamp(20px, 6vw, 78px) 110px;
}

.legal-card {
  width: min(940px, 100%);
  margin: 0 auto;
  padding: clamp(28px, 6vw, 70px);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: rgba(255, 253, 248, 0.86);
  box-shadow: var(--shadow);
}

.legal-block {
  padding-bottom: 34px;
  margin-bottom: 34px;
  border-bottom: 1px solid var(--line);
}

.legal-block:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: 0;
}

.legal-block h2 {
  margin-bottom: 14px;
  font-size: clamp(30px, 4vw, 44px);
  line-height: 1;
}

.legal-block p {
  color: var(--muted);
  line-height: 1.85;
}

@media (max-width: 640px) {
  .legal-hero {
    padding: 116px 16px 42px;
  }

  .legal-container {
    padding: 0 16px 72px;
  }
}
