
.legal-page {
  background:
    radial-gradient(circle at 12% 4%, rgba(108, 198, 208, .16), transparent 28rem),
    radial-gradient(circle at 86% 8%, rgba(145, 0, 72, .10), transparent 24rem),
    linear-gradient(180deg, #f7fbfc 0%, #ffffff 42%, #f5f8f9 100%);
}
.legal-hero {
  min-height: auto;
  padding: clamp(96px, 12vh, 132px) clamp(18px, 4vw, 56px) clamp(46px, 7vw, 76px);
}
.legal-shell { width: min(1040px, 100%); margin: 0 auto; }
.legal-kicker {
  display: inline-flex; align-items: center; gap: .5rem; margin-bottom: 14px;
  padding: 7px 12px; border-radius: 999px; border: 1px solid rgba(145, 0, 72, .16);
  background: rgba(145, 0, 72, .07); color: #910048; font-size: .78rem;
  font-weight: 900; letter-spacing: .08em; text-transform: uppercase;
}
.legal-card {
  border: 1px solid rgba(219, 229, 232, .92); border-radius: 28px;
  background: rgba(255, 255, 255, .94); box-shadow: 0 20px 56px rgba(6, 31, 42, .10);
  overflow: hidden;
}
.legal-document { padding: clamp(24px, 4vw, 54px); color: #12323c; line-height: 1.65; font-size: 1rem; }
.legal-document h1 { margin: 0 0 18px; color: #061f2a; font-size: clamp(2.25rem, 5.4vw, 4.4rem); line-height: .98; letter-spacing: -.06em; }
.legal-document h2, .legal-document h3, .legal-document h4 { color: #061f2a; letter-spacing: -.025em; }
.legal-document h2 { margin: 2.2rem 0 .75rem; font-size: clamp(1.45rem, 2.7vw, 2.1rem); }
.legal-document h3 { margin: 1.9rem 0 .55rem; font-size: clamp(1.15rem, 2vw, 1.45rem); }
.legal-document h4 { margin: 1.2rem 0 .35rem; font-size: 1.02rem; }
.legal-document p { margin: .68rem 0; }
.legal-document ul, .legal-document ol { margin: .75rem 0 1.2rem 1.35rem; padding: 0; }
.legal-document li { margin: .38rem 0; padding-left: .2rem; }
.legal-document a { color: #910048; font-weight: 800; text-decoration: none; border-bottom: 1px solid rgba(145, 0, 72, .28); }
.legal-document a:hover { border-bottom-color: currentColor; }
.legal-document strong, .legal-document b { color: #061f2a; }
@media (max-width: 720px) {
  .legal-hero { padding: 86px 14px 42px; }
  .legal-card { border-radius: 22px; }
  .legal-document { padding: 22px 18px; font-size: .96rem; }
  .legal-document h1 { font-size: clamp(2rem, 12vw, 3rem); }
}

.legal-document h1,
.legal-document h2,
.legal-document h3 {
  text-wrap: balance;
  overflow-wrap: break-word;
}
