
.legal-main { background: var(--color-surface); }
.legal-hero { padding: 5rem 1.5rem 3rem; background: var(--color-primary); color: #fff; text-align:center; }
.legal-hero-inner { width:min(900px,100%); margin:0 auto; }
.legal-hero p { margin-top:1rem; color:rgba(255,255,255,.86); }
.legal-content { width:min(960px,calc(100% - 2rem)); margin:0 auto; padding:3rem 0 5rem; }
.legal-section { padding:1.5rem 0; border-bottom:1px solid rgba(30,58,95,.15); }
.legal-section:last-child { border-bottom:0; }
.legal-section h2 { color:var(--color-primary); font-family:var(--font-family-heading); font-size:clamp(1.45rem,3vw,2rem); margin-bottom:.8rem; }
.legal-section h3 { color:var(--color-primary); margin:1.25rem 0 .5rem; }
.legal-section p + p { margin-top:.8rem; }
.legal-section ul, .legal-section ol { padding-left:1.4rem; margin:.8rem 0; }
.legal-section li + li { margin-top:.45rem; }
.legal-contact-box { padding:1.25rem; border-radius:var(--border-radius-card); background:var(--color-surface-elevated); }
.legal-meta { font-size:.95rem; opacity:.8; }
@media(max-width:480px){.legal-hero{padding:3.5rem 1rem 2.5rem}.legal-content{width:min(100% - 2rem,960px);padding:2rem 0 3rem}.legal-section{padding:1.25rem 0}}

.legal-list {
  display: grid;
  gap: 0.65rem;
  margin: 1rem 0 0;
  padding-left: 1.25rem;
}

.legal-list li {
  line-height: 1.7;
}
