.legal-nav {
  height: 92px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}

.legal-back {
  padding: 10px 0 7px;
  border-bottom: 1px solid #aeb0c2;
  font-size: 14px;
  font-weight: 700;
}

.legal-page {
  padding: 80px 0 120px;
}

.legal-header {
  max-width: 820px;
  margin-bottom: 64px;
}

.legal-header .eyebrow {
  justify-content: flex-start;
  text-align: left;
}

.legal-header h1 {
  max-width: none;
  margin: 18px 0 20px;
}

.legal-header p,
.legal-content p,
.legal-content li {
  color: var(--muted);
  font-size: 16px;
  line-height: 1.8;
}

.legal-content {
  max-width: 820px;
}

.legal-content h2 {
  margin: 56px 0 16px;
  font-size: 28px;
  letter-spacing: -1px;
}

.legal-content h3 {
  margin: 38px 0 12px;
  font-size: 20px;
}

.legal-content p {
  margin: 0 0 20px;
}

.legal-content ul {
  margin: 0 0 24px;
  padding-left: 22px;
}

.legal-content a {
  color: #4548e8;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.error-page {
  display: grid;
  place-items: center;
  min-height: calc(100vh - 92px);
  padding: 70px 0 110px;
  text-align: center;
}

.error-copy {
  width: min(760px, 100%);
}

.error-copy .eyebrow {
  justify-content: center;
}

.error-code {
  margin: 24px 0 -30px;
  color: transparent;
  background: linear-gradient(90deg, var(--violet), var(--blue));
  background-clip: text;
  -webkit-background-clip: text;
  font-size: clamp(110px, 20vw, 220px);
  font-weight: 800;
  line-height: .9;
  letter-spacing: -12px;
  opacity: .13;
}

.error-copy h1 {
  max-width: none;
  margin: 0 0 24px;
  font-size: clamp(48px, 6vw, 78px);
  line-height: 1.02;
}

.error-copy h1 em {
  color: transparent;
  background: linear-gradient(90deg, var(--violet), var(--blue));
  background-clip: text;
  -webkit-background-clip: text;
}

.error-copy > p:not(.error-code) {
  max-width: 620px;
  margin: 0 auto;
  color: var(--muted);
  font-size: 17px;
  line-height: 1.75;
}

.error-actions {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 28px;
  margin-top: 36px;
}

@media (max-width: 620px) {
  .legal-nav {
    height: 76px;
  }

  .legal-page {
    padding: 55px 0 85px;
  }

  .legal-header {
    margin-bottom: 40px;
  }

  .legal-header h1 {
    font-size: 46px;
  }

  .error-page {
    min-height: calc(100vh - 76px);
    padding: 45px 0 80px;
  }

  .error-code {
    margin-bottom: -18px;
    letter-spacing: -7px;
  }

  .error-copy h1 {
    font-size: 46px;
    letter-spacing: -2.8px;
  }

  .error-copy > p:not(.error-code) {
    font-size: 15px;
  }

  .error-actions {
    flex-direction: column;
    gap: 10px;
  }
}
