
.legal-main { width:100%; background:var(--color-surface); color:var(--color-on-surface); padding:var(--spacing-3xl) var(--spacing-xl); }
.legal-content { width:min(100%, 72rem); margin-inline:auto; display:grid; gap:var(--spacing-md); }
.legal-content .hero-title { margin-top:var(--spacing-sm); }
.legal-content .section-title { margin-top:var(--spacing-lg); font-size:var(--font-size-2xl); }
.legal-content p, .legal-content li { font-family:var(--font-family-body); font-size:var(--font-size-base); line-height:var(--line-height-body); }
.legal-back { display:inline-flex; width:max-content; max-width:100%; text-decoration:none; font-weight:600; color:var(--color-primary); }
.legal-back:visited { color:var(--color-primary); }
.legal-back:hover { text-decoration:underline; text-underline-offset:3px; }
.legal-updated { color:var(--color-on-surface-secondary); }
@media (max-width:767px){ .legal-main{padding:var(--spacing-xl) var(--spacing-md);} .legal-content{min-width:0;} }
.legal-main a,
.legal-main a:visited { color: var(--color-primary); text-decoration: none; }
.legal-main a:hover { text-decoration: underline; text-underline-offset: 3px; }
.legal-main a:focus { outline: 2px solid var(--color-primary); outline-offset: 3px; }
.legal-main a:focus-visible { outline: 2px solid var(--color-primary); outline-offset: 3px; }
.legal-main a:active { color: var(--color-primary); }
