
.legal-page { min-height: 100vh; background: var(--color-surface); color: var(--color-on-surface); }
.legal-main { padding: clamp(7rem, 10vw, 9rem) var(--spacing-lg) var(--spacing-3xl); }
.legal-container { width: min(100%, var(--content-max-width)); margin-inline: auto; }
.legal-hero { margin-bottom: var(--spacing-2xl); }
.legal-hero h1 { font-family: var(--font-family-heading); font-size: var(--font-size-4xl); line-height: var(--line-height-heading); margin-bottom: var(--spacing-md); }
.legal-hero p { max-width: 52rem; color: var(--color-on-surface-secondary); }
.legal-company-card { display: grid; gap: .45rem; padding: var(--spacing-xl); margin-bottom: var(--spacing-2xl); border: 1px solid var(--color-outline); border-radius: var(--border-radius-card); background: var(--color-surface-elevated); box-shadow: var(--shadow-level-1); }
.legal-company-card h2 { font-family: var(--font-family-heading); font-size: var(--font-size-2xl); margin-bottom: var(--spacing-sm); }
.legal-content { display: grid; gap: var(--spacing-xl); }
.legal-content section { display: grid; gap: var(--spacing-sm); }
.legal-content h2 { font-family: var(--font-family-heading); font-size: var(--font-size-2xl); line-height: 1.3; }
.legal-content h3 { font-size: var(--font-size-lg); }
.legal-content p, .legal-content li { color: var(--color-on-surface-secondary); }
.legal-content ul, .legal-content ol { margin: 0; padding-left: 1.35rem; display: grid; gap: .5rem; }
.legal-content a, .legal-content a:visited { color: var(--color-primary); text-decoration: none; font-weight: 600; }
.legal-content a:hover { color: var(--color-accent); }
@media (max-width: 767px) {
  .legal-main { padding: 6.5rem var(--spacing-md) var(--spacing-2xl); }
  .legal-company-card { padding: var(--spacing-lg); }
  .legal-content, .legal-company-card { overflow-wrap: anywhere; word-break: break-word; }
}
