
.legal-main { width: 100%; background: var(--color-surface); }
.legal-hero { padding: clamp(3rem, 8vw, 6rem) 1rem 1.5rem; background: linear-gradient(135deg, var(--color-primary), color-mix(in oklab, var(--color-primary) 76%, var(--color-secondary))); color: var(--color-on-primary); }
.legal-hero-inner { width: min(100%, var(--content-max-width)); margin-inline: auto; }
.legal-hero .hero-title { color: var(--color-on-primary); margin: 0 0 .9rem; }
.legal-hero p { max-width: 70ch; margin: 0; color: rgba(255,255,255,.84); }
.legal-content { width: min(100% - 2rem, 62rem); margin-inline: auto; padding: 2rem 0 clamp(3rem, 7vw, 5rem); }
.legal-content section { padding: 1rem 0; border-bottom: 1px solid var(--color-outline); }
.legal-content section:last-child { border-bottom: 0; }
.legal-content h2 { margin: 0 0 .8rem; color: var(--color-primary); }
.legal-content p, .legal-content li { color: var(--color-on-surface-secondary); }
.legal-content a { color: var(--color-primary); font-weight: 600; text-decoration: underline; text-decoration-color: color-mix(in oklab, var(--color-primary) 35%, transparent); text-underline-offset: .18em; }
.legal-content a:visited { color: var(--color-primary); }
.legal-content a:hover { color: var(--color-secondary); }
.legal-content .back-home { display: inline-flex; margin-bottom: 1rem; text-decoration: none; }
.legal-note { padding: 1rem 1.15rem; border-left: 3px solid var(--color-accent); background: var(--color-surface-tint); }
@media (max-width: 767px) { .legal-content { width: min(100% - 1.25rem, 62rem); } .legal-hero { padding-inline: .625rem; } }
