
.legal-main { width: 100%; overflow: hidden; background: var(--color-surface); color: var(--color-on-surface); }
.legal-hero { padding: var(--spacing-3xl) var(--spacing-xl) var(--spacing-2xl); background: linear-gradient(145deg, color-mix(in srgb, var(--color-primary) 12%, var(--color-surface)), var(--color-surface)); }
.legal-inner { width: 100%; max-width: var(--content-max-width); margin: 0 auto; }
.legal-kicker { display: inline-block; margin-bottom: var(--spacing-sm); color: var(--color-primary); font-size: var(--font-size-xs); font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.legal-lead { max-width: 52rem; margin-top: var(--spacing-md); color: var(--color-on-surface-secondary); font-size: var(--font-size-lg); }
.legal-updated { margin-top: var(--spacing-sm); color: var(--color-on-surface-secondary); font-size: var(--font-size-sm); }
.legal-company-intro { padding: var(--spacing-2xl) var(--spacing-xl) 0; }
.legal-company-card { width: 100%; max-width: none; margin: 0; color: var(--color-on-primary); background: var(--color-primary); border: 0; box-shadow: var(--shadow-level-1); }
.legal-content { padding: var(--spacing-2xl) var(--spacing-xl) var(--spacing-4xl); }
.legal-prose { max-width: 58rem; }
.legal-prose .section-title { margin-top: var(--spacing-2xl); margin-bottom: var(--spacing-sm); color: var(--color-primary); }
.legal-prose .section-title:first-child { margin-top: 0; }
.legal-prose p { margin: 0 0 var(--spacing-md); color: var(--color-on-surface-secondary); font-size: var(--font-size-base); line-height: 1.75; }
.legal-prose a { color: var(--color-primary); font-weight: 600; text-decoration: none; border-bottom: 1px solid color-mix(in srgb, var(--color-primary) 35%, transparent); }
.legal-prose a:visited { color: var(--color-primary); }
.legal-prose a:hover { color: color-mix(in srgb, var(--color-primary) 78%, #000); border-bottom-color: currentColor; }
.legal-prose a:focus-visible { color: var(--color-primary); }
.legal-prose a:active { color: var(--color-primary); }
.legal-back { margin-top: var(--spacing-2xl) !important; }
@media (max-width: 767px) {
  .legal-hero, .legal-company-intro, .legal-content { padding-left: var(--spacing-md); padding-right: var(--spacing-md); }
  .legal-hero { padding-top: var(--spacing-2xl); }
  .legal-content { padding-bottom: var(--spacing-3xl); }
  .legal-company-card { width: 100%; }
}
