
.legal-main, .not-found-main { background: var(--color-surface); color: var(--color-on-surface); }
.legal-hero { padding: clamp(3rem,7vw,6rem) var(--spacing-lg) clamp(2rem,4vw,3rem); background: var(--color-surface-tint); border-bottom: var(--divider-value); }
.legal-content-container { width: min(100% - 2rem, var(--content-max-width)); margin-inline: auto; }
.legal-kicker { margin: 0 0 var(--spacing-sm); color: var(--color-secondary); font-size: var(--font-size-xs); letter-spacing: .08em; text-transform: uppercase; font-weight: var(--font-weight-medium); }
.legal-hero .hero-title { color: var(--color-primary); margin: 0 0 var(--spacing-md); }
.legal-hero .hero-subtitle { max-width: 52rem; color: var(--color-on-surface-secondary); }
.legal-article { padding-block: var(--spacing-3xl); }
.legal-article > section { padding: var(--spacing-xl) ; border-bottom: var(--divider-value); }
.legal-article > section:last-child { border-bottom: 0; }
.legal-article .section-title { margin: 0 0 var(--spacing-md); color: var(--color-primary); font-size: var(--font-size-2xl); }
.legal-article p, .legal-article li { font-family: var(--font-family-body); font-size: var(--font-size-base); line-height: var(--line-height-body); color: var(--color-on-surface-secondary); }
/* Legal pages use the site link styling rather than browser defaults. */
a, a:visited {
  color: inherit;
  text-decoration: none;
}
a:hover, a:active {
  text-decoration: none;
}
.legal-article a, .legal-article a:visited {
  color: var(--color-accent);
  text-decoration: none;
  font-weight: var(--font-weight-medium);
}
.legal-article a:hover, .legal-article a:active {
  color: var(--color-secondary);
  text-decoration: none;
}
.legal-article a:focus-visible {
  color: var(--color-accent);
  text-decoration: none;
}
.legal-company-summary { padding: var(--spacing-xl); border: 1px solid var(--color-border); background: var(--color-surface-tint); border-radius: var(--border-radius-card); }
.legal-company-summary .section-title { margin-top: 0; }
.legal-company-grid { display:grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: var(--spacing-lg); }
.legal-company-grid p { margin:0; overflow-wrap:anywhere; }
.legal-company-grid strong, .legal-company-grid span, .legal-company-grid a { display:block; }
.legal-company-grid strong { color: var(--color-on-surface); margin-bottom:.25rem; }
.not-found-main { min-height: 60vh; display:grid; place-items:center; padding: var(--spacing-3xl) var(--spacing-lg); }
.not-found-card { width:min(100%,48rem); text-align:center; padding: clamp(2rem,6vw,5rem); background:var(--color-surface-tint); border:var(--divider-value); border-radius:var(--border-radius-card); }
.not-found-card .hero-title { color:var(--color-primary); margin-bottom:var(--spacing-md); }
.not-found-actions { margin-top:var(--spacing-xl); display:flex; gap:var(--spacing-md); justify-content:center; flex-wrap:wrap; }
@media(max-width:767px){ .legal-content-container{width:min(100% - 1.5rem,var(--content-max-width));} .legal-company-grid{grid-template-columns:1fr;} .legal-article{padding-block:var(--spacing-xl);} }
