/* Páginas legais — mesmo padrão visual da página inicial (2026-10-29).
   Carregado depois de home.css, que fornece cabeçalho, rodapé, botões e cores. */

/* Topo da página */
.legal-hero{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(180deg,#eaf3ff 0%,#f6faff 60%,#fff 100%);padding:72px 0 64px}
.legal-hero-grid{position:absolute;inset:0;z-index:-1;background-image:radial-gradient(rgba(9,103,233,.16) 1px,transparent 1.4px);background-size:26px 26px;-webkit-mask-image:radial-gradient(ellipse 70% 80% at 80% 20%,#000 15%,transparent 70%);mask-image:radial-gradient(ellipse 70% 80% at 80% 20%,#000 15%,transparent 70%)}
.legal-hero:after{content:"";position:absolute;z-index:-1;width:520px;height:520px;right:-140px;top:-200px;border-radius:50%;background:radial-gradient(circle,rgba(8,162,247,.2),transparent 65%)}
.legal-hero .container{display:flex;flex-direction:column;align-items:flex-start;gap:14px;max-width:1200px}
.legal-back{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 16px;margin-bottom:12px;border-radius:999px;background:#fff;border:1px solid #cfe1fb;box-shadow:var(--shadow-sm);color:var(--blue-btn);font-size:14px;font-weight:700;transition:transform .2s,box-shadow .2s}
.legal-back:hover{transform:translateX(-2px);box-shadow:var(--shadow-md)}
.legal-hero h1{font-size:52px;font-weight:800;letter-spacing:-.03em;line-height:1.08;max-width:820px}
.legal-hero .container>p{font-size:19px;color:var(--muted);max-width:680px}
.legal-meta{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}
.legal-meta span{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:999px;background:#fff;border:1px solid var(--line);font-size:13px;font-weight:600;color:#2c3d63}
.legal-meta span:first-child:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--blue-2)}

/* Conteúdo */
.legal-content-section{padding:24px 0 104px}
.legal-layout{display:grid;grid-template-columns:270px minmax(0,1fr);gap:40px;align-items:start}
.legal-toc{position:sticky;top:108px;display:flex;flex-direction:column;gap:2px;padding:22px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow-sm);max-height:calc(100vh - 132px);overflow-y:auto}
.legal-toc b{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--blue-btn);margin-bottom:10px}
.legal-toc a{display:block;padding:8px 12px;border-radius:10px;font-size:14px;font-weight:600;color:#4a5878;line-height:1.35;transition:background .2s,color .2s}
.legal-toc a:hover{background:var(--bg-soft);color:var(--navy)}
.legal-toc a.active{background:var(--blue-soft);color:var(--blue-btn)}

.legal-document{display:flex;flex-direction:column;gap:20px;min-width:0}
.legal-card{position:relative;padding:36px 40px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow-sm)}
.legal-card:before{content:"";position:absolute;left:0;top:36px;width:4px;height:28px;border-radius:0 4px 4px 0;background:var(--grad-blue)}
.legal-card h2{font-size:24px;font-weight:800;margin-bottom:16px}
.legal-card h3{font-size:18px;font-weight:700;margin:22px 0 8px}
.legal-card p{color:#3c4a68;font-size:16px;line-height:1.75}
.legal-card p+p{margin-top:14px}
.legal-card ul,.legal-card ol{margin:14px 0 14px 4px;padding-left:20px;color:#3c4a68;display:flex;flex-direction:column;gap:8px}
.legal-card li{padding-left:4px;line-height:1.65}
.legal-card ul li::marker{color:var(--blue-2)}
.legal-card ol li::marker{color:var(--blue-btn);font-weight:800}
.legal-card strong{color:var(--navy)}
.legal-card a,.legal-notice a{color:var(--blue-btn);font-weight:600;text-decoration:underline;text-decoration-color:rgba(7,88,204,.35);text-underline-offset:3px}
.legal-card a:hover{text-decoration-color:currentColor}

.legal-principles{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin-top:6px}
.legal-principles article{display:flex;flex-direction:column;gap:4px;padding:16px 18px;border-radius:14px;background:var(--bg-soft);border:1px solid var(--line)}
.legal-principles b{color:var(--navy);font-size:15px}
.legal-principles span{color:var(--muted);font-size:14px;line-height:1.5}

.legal-notice{padding:28px 32px;border-radius:var(--radius);color:#fff;background:radial-gradient(circle at 100% 0%,rgba(8,162,247,.35),transparent 55%),var(--navy);box-shadow:var(--shadow-md)}
.legal-notice b{display:block;font-size:17px;margin-bottom:8px;color:#fff}
.legal-notice p{color:#b8cae8}
.legal-notice a{color:#7cc8ff}

.legal-links a.legal-active{color:#fff;font-weight:700}

@media (max-width:980px){
  .legal-layout{grid-template-columns:1fr;gap:24px}
  .legal-toc{position:static;max-height:none}
}
@media (max-width:640px){
  .legal-hero{padding:48px 0 40px}
  .legal-hero h1{font-size:36px}
  .legal-hero .container>p{font-size:17px}
  .legal-card{padding:26px 22px}
  .legal-card:before{top:28px}
  .legal-card h2{font-size:20px}
  .legal-content-section{padding-bottom:72px}
}
