/* Legal pages: privacy, terms, cookies and LGPD. A short dark header, then readable text with a table of contents. */
.legal-hero{background:var(--ink);color:#fff;padding-block:clamp(48px,6vw,88px)}
.legal-kicker{display:flex;flex-wrap:wrap;gap:6px 14px;color:var(--lime);font-size:14px;font-weight:650;letter-spacing:1.3px;text-transform:uppercase}
.legal-kicker time{color:var(--dark-muted);letter-spacing:.4px;text-transform:none;font-weight:500}
.legal-hero h1{max-width:900px;margin-top:16px;font-size:clamp(38px,4.6vw,64px);line-height:1.04;letter-spacing:-.055em}
.legal-hero p{max-width:660px;margin-top:20px;color:#c4c6bd;font-size:18px;line-height:1.7}
.legal-body{padding-block:clamp(40px,5vw,72px)}
.legal-layout{display:grid;grid-template-columns:minmax(0,240px) minmax(0,1fr);gap:clamp(32px,6vw,88px);align-items:start}
.legal-toc{position:sticky;top:calc(var(--header-height,88px) + 24px);font-size:15px}
.legal-toc>b{display:block;margin-bottom:10px;color:var(--muted);font-size:14px;font-weight:650;letter-spacing:1px;text-transform:uppercase}
.legal-toc ol{margin:0;padding:0;list-style:none;display:grid;gap:2px;border-left:1px solid var(--line)}
.legal-toc a{display:block;padding:7px 0 7px 16px;margin-left:-1px;border-left:2px solid transparent;color:var(--muted);line-height:1.4}
.legal-toc a:hover{color:var(--ink);border-left-color:var(--violet)}
.legal-content{max-width:760px;min-width:0}
.legal-content h2{margin-top:clamp(36px,4vw,52px);font-size:clamp(26px,2.6vw,34px);line-height:1.15;letter-spacing:-.04em;scroll-margin-top:calc(var(--header-height,88px) + 24px)}
.legal-content h2:first-child{margin-top:0}
.legal-content h3{margin-top:26px;font-size:20px;line-height:1.3;letter-spacing:-.02em}
.legal-content p,.legal-content li{color:#33352f;font-size:17px;line-height:1.8}
.legal-content p{margin-top:14px}
.legal-content ul,.legal-content ol{margin:14px 0 0;padding-left:22px;display:grid;gap:8px}
.legal-content a{color:var(--violet);text-decoration:underline;text-underline-offset:3px}
.legal-content strong{color:var(--ink)}
.legal-note{margin-top:22px;padding:16px 18px;border-left:4px solid var(--lime);border-radius:0 12px 12px 0;background:var(--wash)}
.legal-note p{margin:0;font-size:16px}
.legal-table-wrap{margin-top:18px;overflow-x:auto;border:1px solid var(--line);border-radius:14px}
.legal-table{width:100%;min-width:640px;border-collapse:collapse;font-size:15px}
.legal-table th,.legal-table td{padding:12px 14px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;line-height:1.55}
.legal-table th{background:var(--wash);font-weight:650;color:var(--ink)}
.legal-table tr:last-child td{border-bottom:0}
.legal-table code{font-size:14px;word-break:break-all}
.legal-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}
.legal-actions .button{background:var(--ink);color:#fff}
.legal-others{margin-top:clamp(40px,5vw,64px);padding-top:28px;border-top:1px solid var(--line)}
.legal-others>b{display:block;margin-bottom:12px;color:var(--muted);font-size:14px;font-weight:650;letter-spacing:1px;text-transform:uppercase}
.legal-others>nav{display:flex;flex-wrap:wrap;gap:8px 22px}
.legal-others a{font-weight:650;text-decoration:underline;text-underline-offset:4px}
@media(max-width:900px){.legal-layout{grid-template-columns:minmax(0,1fr)}.legal-toc{position:static}.legal-toc ol{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));border-left:0;gap:0 18px}.legal-toc a{border-left:0;padding:6px 0;margin:0}}
@media(max-width:560px){.legal-hero p{font-size:16px}.legal-content p,.legal-content li{font-size:16px}}
@media print{.legal-toc,.legal-others{display:none}.legal-hero{background:#fff;color:#000}.legal-content p,.legal-content li{color:#000}}
