.legal-hero { padding: 64px 7.2% 56px; color: var(--white); background: var(--forest); }
.legal-hero h1 { max-width: 820px; margin: 0; font-family: var(--serif); font-size: clamp(32px, 5vw, 52px); font-weight: 400; line-height: 1.1; }
.legal-meta { margin: 16px 0 0; color: #bdc9c1; font-size: 14px; font-weight: 600; }

.legal-body { max-width: 780px; margin: 0 auto; padding: 48px 20px 80px; color: var(--ink); font-size: 16px; line-height: 1.7; }
.legal-body h2 { margin: 44px 0 12px; padding-bottom: 8px; font-size: 20px; font-weight: 800; border-bottom: 1px solid var(--line); }
.legal-body p { margin: 10px 0; }
.legal-body ul { margin: 10px 0; padding-left: 22px; }
.legal-body li { margin: 6px 0; }
.legal-body strong { font-weight: 700; }
.legal-body a { color: var(--orange-dark); font-weight: 700; text-decoration: underline; text-underline-offset: 3px; }
.legal-intro { margin-bottom: 8px; padding: 16px 20px; background: var(--white); border-left: 4px solid var(--orange); }
.legal-related { margin-top: 48px !important; padding-top: 20px; color: var(--muted); border-top: 1px solid var(--line); }

.form-frame { display: block; width: 100%; height: 1100px; margin-top: 16px; background: var(--white); border: 1px solid var(--line); }
.form-fallback { color: var(--muted); font-size: 14px; }

@media (max-width: 860px) {
  .legal-hero { padding: 44px 16px 40px; }
  .legal-body { padding: 32px 16px 64px; font-size: 15.5px; }
  .form-frame { height: 1300px; }
}
