/* Páginas legais · funciona nos dois brandings (body.tech e body.aes) */
.lg-hero { padding: 72px 0 34px; background: radial-gradient(620px 380px at 92% 0%, var(--lg-glow, rgba(139,124,246,.16)), transparent 62%), var(--bg); }
body.aes .lg-hero { --lg-glow: rgba(229,154,185,.22); }
.lg-hero h1 { font-size: clamp(40px, 5.6vw, 72px); line-height: 1; margin: 16px 0 12px; }
.lg-meta { color: var(--muted); font-size: 14px; margin: 0 0 26px; }
.lg-tabs { display: flex; gap: 8px; overflow-x: auto; padding-bottom: 4px; scrollbar-width: none; }
.lg-tabs::-webkit-scrollbar { display: none; }
.lg-tabs a { flex: none; font-size: 14px; font-weight: 600; color: var(--ink); text-decoration: none; padding: 10px 16px; border-radius: 999px; background: #fff; box-shadow: 0 0 0 1px rgba(17,17,17,.08); transition: background .2s, color .2s; }
.lg-tabs a:hover { background: var(--lg-soft, #EEEBFF); }
body.aes .lg-tabs a:hover { --lg-soft: #FBE3EC; }
.lg-tabs a.on { background: var(--ink); color: #fff; box-shadow: none; }
.lg-body { padding: 26px 0 100px; }
.lg-g { display: grid; grid-template-columns: 250px minmax(0, 1fr); gap: 40px; align-items: start; }
@media (max-width: 900px) { .lg-g { grid-template-columns: 1fr; gap: 18px; } .lg-toc { position: static !important; } }
.lg-toc { position: sticky; top: 96px; display: grid; gap: 2px; background: #fff; border-radius: 22px; padding: 18px; box-shadow: 0 0 0 1px rgba(17,17,17,.07); }
.lg-toc b { font: 500 11px "JetBrains Mono", monospace; letter-spacing: .1em; text-transform: uppercase; color: var(--muted); margin-bottom: 8px; }
.lg-toc a { display: flex; gap: 10px; align-items: baseline; padding: 7px 8px; border-radius: 10px; font-size: 14px; color: var(--ink); text-decoration: none; line-height: 1.35; }
.lg-toc a span { font: 500 11px "JetBrains Mono", monospace; color: var(--muted); flex: none; }
.lg-toc a:hover { background: rgba(17,17,17,.04); }
@media (max-width: 900px) { .lg-toc { grid-template-columns: 1fr 1fr; } .lg-toc b { grid-column: 1 / -1; } }
.lg-doc { max-width: 760px; display: grid; gap: 14px; }
.lg-sum { background: var(--ink); color: #fff; border-radius: 24px; padding: 24px 26px; }
.lg-sum b { display: block; font: 500 11px "JetBrains Mono", monospace; letter-spacing: .1em; text-transform: uppercase; color: var(--lg-acc, #C9C0FF); margin-bottom: 10px; }
body.aes .lg-sum b { --lg-acc: #E59AB9; }
.lg-sum ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.lg-sum li { position: relative; padding-left: 26px; color: rgba(255,255,255,.86); line-height: 1.5; }
.lg-sum li::before { content: "✓"; position: absolute; left: 0; color: var(--lg-acc, #C9C0FF); font-weight: 800; }
body.aes .lg-sum li::before { --lg-acc: #E59AB9; }
.lg-sec { background: #fff; border-radius: 22px; padding: 24px 26px; box-shadow: 0 0 0 1px rgba(17,17,17,.06); scroll-margin-top: 100px; }
.lg-sec h2 { display: flex; gap: 12px; align-items: baseline; font-size: 24px; line-height: 1.2; margin: 0 0 10px; letter-spacing: -0.02em; }
body.aes .lg-sec h2 { font-size: 30px; }
.lg-sec h2 span { font: 500 12px "JetBrains Mono", monospace; letter-spacing: .06em; color: var(--muted); flex: none; transform: translateY(-3px); }
.lg-sec p, .lg-sec li { color: #3A3536; font-size: 15.5px; line-height: 1.7; }
.lg-sec p { margin: 0 0 10px; } .lg-sec p:last-child { margin-bottom: 0; }
.lg-sec ul { margin: 6px 0 0; padding-left: 20px; display: grid; gap: 6px; }
.lg-sec a { color: var(--ink); font-weight: 600; text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; }
.lg-help { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; background: var(--lg-soft2, #EEEBFF); border-radius: 22px; padding: 20px 24px; margin-top: 6px; }
body.aes .lg-help { --lg-soft2: #FBE3EC; }
.lg-help b { display: block; font-size: 16px; } .lg-help span { color: var(--muted); font-size: 14px; }
body.tech .lg-sec h2 { font-size: 24px; margin: 0 0 10px; line-height: 1.2; }
body.tech .lg-hero h1 { font-size: clamp(40px, 5.6vw, 72px); }
@media (max-width: 600px) { .lg-toc { display: none; } .lg-sec { padding: 20px; } }
