.legal-page .legal-title {
  font-family: var(--font-display);
  font-size: clamp(2.4rem, 5vw, 4rem);
  line-height: 1.08;
  letter-spacing: -0.055em;
  color: var(--ink);
}

.legal-section {
  background: var(--paper);
  border-top: 1px solid var(--line);
}

.legal-section:nth-of-type(even) {
  background: var(--surface);
}

.legal-card {
  display: grid;
  grid-template-columns: minmax(190px, 0.7fr) minmax(0, 1.3fr);
  gap: 64px;
  max-width: 1100px;
  padding: 48px 0;
  background: transparent;
  border: 0;
  border-radius: 0;
}

.legal-header {
  align-self: start;
  position: sticky;
  top: 112px;
}

.legal-card .prose-dnet {
  margin-top: 0;
  padding-left: 48px;
  border-left: 1px solid var(--line);
}

.legal-card .prose-dnet h2 {
  margin-top: 0;
  padding-top: 24px;
  font-family: var(--font-display);
  font-size: 1.25rem;
  line-height: 1.2;
  letter-spacing: -0.035em;
}

.legal-card .prose-dnet h2:not(:first-child) {
  margin-top: 40px;
  border-top: 1px solid var(--line);
}

@media (max-width: 767px) {
  .legal-card {
    display: block;
    padding: 28px 0;
  }

  .legal-header {
    position: static;
  }

  .legal-card .prose-dnet {
    margin-top: 32px;
    padding-left: 20px;
  }
}
