/* Юридические страницы: тот же лес, Dela только в заголовках, длинный текст на системном шрифте. */
.legal { min-height: 100dvh; display: flex; flex-direction: column; padding-top: 132px; }
.legal-body { flex: 1; width: min(820px, calc(100% - 48px)); padding-bottom: 72px; }
.legal-body h1 { font-size: clamp(30px, 4.4vw, 46px); line-height: 1.25; letter-spacing: -.028em; margin-bottom: 36px; text-wrap: balance; }
.legal-body h2 { margin: 44px 0 14px; font-size: clamp(20px, 2.4vw, 26px); line-height: 1.35; letter-spacing: -.02em; }
.legal-body h3 { margin: 28px 0 10px; font: 700 17px/1.45 var(--body); }
.legal-body p, .legal-body li { font-size: 16px; line-height: 1.75; color: var(--paper); }
.legal-body p { margin-top: 14px; max-width: 70ch; }
.legal-body ul, .legal-body ol { margin: 14px 0 0; padding-left: 1.3em; display: grid; gap: 8px; max-width: 70ch; }
.legal-body a { color: var(--tea); text-decoration: underline; text-underline-offset: 3px; }
.legal-body table { width: 100%; margin-top: 18px; border-collapse: collapse; font-size: 14px; line-height: 1.55; }
.legal-body th, .legal-body td { padding: 10px 12px; text-align: left; vertical-align: top; border-bottom: 1px solid #596a4e; }
.legal-body th { color: var(--tea); font-weight: 700; }
.legal-placeholder { padding: 24px; border: 1px dashed var(--line); border-radius: var(--radius); color: var(--muted); }
.legal .footer { padding-top: 48px; }
.legal .contact-row { margin-top: 0; }
@media (max-width: 700px) {
  .legal { padding-top: 176px; }
  .legal-body { width: min(820px, calc(100% - 32px)); padding-bottom: 48px; }
  .legal-body table { display: block; overflow-x: auto; }
}
