/* ScaleFlow legal pages — extends site.css */
.legal { padding: 8.5rem 1.25rem 5rem; }
.legal__in { max-width: 760px; margin: 0 auto; background: #fff; border: 1px solid var(--line); border-radius: 28px; padding: 2.75rem 2.5rem; box-shadow: var(--shadow); }
.legal .container { width: auto; }
.legal .eyebrow { display: inline-block; font: 500 .78rem var(--mono); text-transform: uppercase; letter-spacing: .08em; color: #7a5df5; }
.legal h1 { font-size: clamp(2.2rem, 5.5vw, 3.2rem); letter-spacing: -.045em; margin: 1rem 0 .6rem; }
.legal .meta { color: var(--muted); font-size: .9rem; margin-bottom: 1.5rem; }
.legal .callout { background: linear-gradient(135deg, rgba(255, 181, 159, .28), rgba(143, 178, 255, .28)); border-radius: 16px; padding: 1.1rem 1.3rem; margin: 1.5rem 0 2rem; font-weight: 500; }
.legal .toc { background: #f7f5f0; border-radius: 16px; padding: 1.15rem 1.4rem; margin-bottom: 2rem; }
.legal .toc b { font: 500 .78rem var(--mono); text-transform: uppercase; letter-spacing: .08em; color: var(--muted); }
.legal .toc ol { margin: .7rem 0 0; padding-left: 1.2rem; columns: 2; column-gap: 2rem; font-size: .95rem; list-style: decimal; }
.legal .toc li { margin-bottom: .3rem; break-inside: avoid; }
.legal .toc a { text-decoration: none; font-weight: 450; }
.legal .toc a:hover { text-decoration: underline; }
.legal h2 { font-size: 1.45rem; letter-spacing: -.03em; margin: 2.4rem 0 .7rem; }
.legal p, .legal li { color: #34322e; font-size: 1rem; }
.legal p + p { margin-top: .9rem; }
.legal ul { list-style: disc; padding-left: 1.3rem; margin: .8rem 0; display: grid; gap: .45rem; }
.legal a { font-weight: 500; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.legal-foot { max-width: 760px; margin: 0 auto; padding: 0 1.25rem 3rem; text-align: center; font-size: .85rem; color: var(--muted); }
.legal-foot a { margin: 0 .6rem; }
@media (max-width: 600px) { .legal__in { padding: 1.9rem 1.35rem; } .legal .toc ol { columns: 1; } .legal { padding-top: 7.5rem; } }
