/* Site público do Andias — visual "v2": clássico na estrutura, atual nos detalhes.
   Usado por base_publico_v2.html (Início e Download). Sem build, sem framework e
   sem fonte ou script externo — o mesmo princípio de publico.css: funciona em
   qualquer hospedagem, inclusive intranet. Os títulos usam Georgia (vem no
   Windows e no macOS) e o texto usa a fonte do sistema. */

:root {
  --papel: #F7F4EE;
  --branco: #FFFFFF;
  --tinta: #16212E;
  --texto: #3E4A58;
  --apoio: #4F5B69;
  --azul: #1E3A5F;
  --azul-fundo: #142942;
  --nevoa: #E8EDF3;
  --nevoa-borda: #D3DAE3;
  --latao: #7C6020;          /* texto: 5,4:1 sobre o papel */
  --latao-filete: #B58E3B;   /* só filetes e números grandes */
  --filete: #D9D2C5;
  --filete-suave: #E6E0D3;
  --rodape: #0F1F33;
  --serif: Georgia, "Times New Roman", serif;
  --sans: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --largura: 1280px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0; background: var(--papel); color: var(--tinta);
  font: 17px/1.6 var(--sans);
}
a { color: var(--azul); }
a:hover { color: var(--azul-fundo); }
:focus-visible { outline: 3px solid var(--latao-filete); outline-offset: 2px; }
button { font-family: inherit; }
.v2-miolo { max-width: var(--largura); margin: 0 auto; padding-left: 32px; padding-right: 32px; }

/* ── Faixa institucional e cabeçalho ───────────────────────────────────── */
.v2-faixa { background: var(--azul-fundo); color: #E9E4D8; font-size: 13px; }
.v2-faixa .v2-miolo { padding-top: 9px; padding-bottom: 9px; display: flex; flex-wrap: wrap; gap: 6px 24px; justify-content: space-between; }
.v2-faixa a { color: #F3D9A0; text-decoration: none; font-weight: 600; }
.v2-faixa-dir { display: flex; flex-wrap: wrap; gap: 6px 20px; }

.v2-topo { background: var(--branco); border-bottom: 3px double var(--azul); position: relative; z-index: 20; }
.v2-topo .v2-miolo { padding-top: 18px; padding-bottom: 18px; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px 32px; }
.v2-marca { text-decoration: none; display: flex; flex-direction: column; line-height: 1; }
.v2-marca-nome { font-family: var(--serif); font-size: 38px; font-weight: 700; color: var(--azul); letter-spacing: -0.5px; }
.v2-marca-sub { font-size: 10.5px; letter-spacing: 4px; font-weight: 600; color: var(--latao); margin-top: 3px; }
.v2-nav { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 28px; font-size: 15.5px; font-weight: 500; }
.v2-nav a { color: var(--tinta); text-decoration: none; }
.v2-nav a:hover { color: var(--azul); }
.v2-nav a.v2-atual { font-weight: 700; color: var(--azul-fundo); border-bottom: 2px solid var(--latao-filete); }
.v2-nav a.v2-entrar { background: var(--azul); color: #FFFFFF; padding: 10px 22px; border-radius: 3px; font-weight: 600; }
.v2-nav a.v2-entrar:hover { background: var(--azul-fundo); color: #FFFFFF; }
.v2-drop { position: relative; }
.v2-drop summary { cursor: pointer; list-style: none; }
.v2-drop summary::-webkit-details-marker { display: none; }
.v2-drop summary::after { content: " ▾"; font-size: 12px; color: var(--apoio); }
.v2-drop-painel { position: absolute; top: 100%; left: -12px; margin-top: 10px; min-width: 250px; background: var(--branco); border: 1px solid var(--filete); border-top: 3px solid var(--azul); box-shadow: 0 14px 30px rgba(20, 41, 66, .14); padding: 8px 0; display: flex; flex-direction: column; }
.v2-drop-painel a { padding: 9px 20px; }
.v2-drop-painel a:hover { background: var(--papel); }

/* ── Tipografia e botões ───────────────────────────────────────────────── */
.v2-rotulo { margin: 0 0 12px; font-size: 13px; font-weight: 700; letter-spacing: 3px; color: var(--latao); text-transform: uppercase; }
.v2-h1 { margin: 0 0 24px; font-family: var(--serif); font-weight: 600; font-size: 60px; line-height: 1.06; letter-spacing: -1.5px; color: var(--azul-fundo); }
.v2-h2 { margin: 0 0 16px; font-family: var(--serif); font-weight: 600; font-size: 42px; line-height: 1.12; letter-spacing: -0.8px; color: var(--azul-fundo); }
.v2-h3 { margin: 0 0 10px; font-family: var(--serif); font-weight: 600; font-size: 27px; line-height: 1.2; color: var(--azul-fundo); }
.v2-lead { margin: 0 0 32px; font-size: 19.5px; line-height: 1.6; color: var(--texto); max-width: 580px; }
.v2-btn { display: inline-block; text-decoration: none; font-weight: 600; font-size: 16.5px; padding: 16px 30px; border-radius: 3px; border: 2px solid transparent; cursor: pointer; }
.v2-btn-prim { background: var(--azul); color: #FFFFFF; }
.v2-btn-prim:hover { background: var(--azul-fundo); color: #FFFFFF; }
.v2-btn-sec { color: var(--azul); border-color: var(--azul); padding: 14px 28px; }
.v2-btn-sec:hover { background: var(--azul); color: #FFFFFF; }
.v2-btn-claro { background: var(--papel); color: var(--azul-fundo); font-weight: 700; }
.v2-btn-claro:hover { background: #FFFFFF; color: var(--azul-fundo); }
.v2-link { font-weight: 600; text-decoration: none; border-bottom: 2px solid var(--latao-filete); padding-bottom: 2px; }
.v2-link:hover { border-bottom-color: var(--azul); }
.v2-ornamento { display: flex; align-items: center; gap: 14px; justify-content: center; margin-top: 28px; }
.v2-ornamento i { height: 1px; width: 90px; background: var(--latao-filete); }
.v2-ornamento b { width: 9px; height: 9px; background: var(--latao-filete); transform: rotate(45deg); }

/* ── Início: herói e demonstração ─────────────────────────────────────── */
.v2-hero { padding-top: 72px; padding-bottom: 64px; display: flex; flex-wrap: wrap; gap: 56px; align-items: center; }
.v2-hero-texto { flex: 1 1 520px; min-width: 0; }
.v2-hero-ctas { display: flex; flex-wrap: wrap; gap: 14px; }
.v2-nota { margin: 18px 0 0; font-size: 14.5px; color: var(--apoio); }
.v2-demo { flex: 1 1 440px; min-width: 0; background: var(--branco); border: 1px solid var(--filete); border-radius: 6px; box-shadow: 0 1px 0 var(--filete), 0 18px 40px rgba(20, 41, 66, .10); }
.v2-demo-barra { display: flex; align-items: center; gap: 7px; padding: 12px 16px; border-bottom: 1px solid var(--filete-suave); background: #FBF9F5; border-radius: 6px 6px 0 0; }
.v2-demo-barra i { width: 10px; height: 10px; border-radius: 50%; background: var(--filete); }
.v2-demo-barra span { margin-left: 10px; font-size: 12.5px; color: var(--apoio); }
.v2-demo-corpo { padding: 26px 28px 28px; }
.v2-demo-corpo h2 { margin: 0 0 6px; font-family: var(--serif); font-size: 25px; font-weight: 600; color: var(--azul-fundo); line-height: 1.2; }
.v2-demo-corpo > p { margin: 0 0 18px; font-size: 15px; color: var(--apoio); }
.v2-alterna { display: flex; border: 1px solid var(--azul); border-radius: 3px; overflow: hidden; margin-bottom: 22px; }
.v2-alterna button { flex: 1; border: none; cursor: pointer; padding: 11px 14px; font-size: 14.5px; font-weight: 600; background: var(--branco); color: var(--azul); }
.v2-alterna button[aria-pressed="true"] { background: var(--azul); color: #FFFFFF; }
.v2-passos { list-style: none; margin: 0; padding: 0; }
.v2-passos li { display: flex; gap: 14px; padding: 14px 0; border-top: 1px solid var(--filete-suave); }
.v2-passos .v2-num { flex: 0 0 28px; height: 28px; border-radius: 50%; background: var(--nevoa); color: var(--azul); font-weight: 700; font-size: 14px; display: flex; align-items: center; justify-content: center; }
.v2-passos .v2-info { flex: 1; min-width: 0; }
.v2-passos .v2-linha { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 6px 12px; }
.v2-passos strong { font-size: 16px; color: var(--azul-fundo); }
.v2-passos p { margin: 3px 0 0; font-size: 14.5px; color: var(--apoio); line-height: 1.5; }
.v2-chip { font-size: 12.5px; font-weight: 700; padding: 3px 10px; border-radius: 20px; background: #E3F1E7; color: #1E5A2E; }
.v2-chip-espera { background: #FBEFD2; color: #6B4A0A; }
.v2-ilustracao { margin: 12px 0 0; font-size: 12.5px; color: #5E6978; font-style: italic; }

/* ── Início: faixa de confiança ───────────────────────────────────────── */
.v2-confianca { border-top: 1px solid var(--filete); border-bottom: 1px solid var(--filete); background: var(--branco); }
.v2-confianca .v2-miolo { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); }
.v2-confianca div { padding: 26px 24px; border-right: 1px solid var(--filete-suave); }
.v2-confianca div:first-child { padding-left: 0; }
.v2-confianca div:last-child { border-right: none; padding-right: 0; }
.v2-confianca strong { display: block; font-family: var(--serif); font-size: 22px; font-weight: 600; color: var(--azul-fundo); margin-bottom: 4px; }
.v2-confianca span { font-size: 14.5px; color: var(--apoio); }

/* ── Seções ───────────────────────────────────────────────────────────── */
.v2-secao { padding-top: 88px; padding-bottom: 40px; }
.v2-centro { text-align: center; max-width: 720px; margin: 0 auto 44px; }
.v2-grade-2 { display: grid; grid-template-columns: repeat(auto-fit, minmax(340px, 1fr)); gap: 28px; }
.v2-folio { background: var(--branco); border: 1px solid var(--filete); border-top: 4px solid var(--azul); padding: 36px 36px 32px; }
.v2-folio .v2-romano { margin: 0; font-family: var(--serif); font-size: 56px; font-weight: 500; line-height: 1; color: var(--latao-filete); }
.v2-folio .v2-rotulo { margin: 14px 0 6px; font-size: 12.5px; }
.v2-folio h3 { margin: 0 0 12px; font-family: var(--serif); font-size: 32px; font-weight: 600; color: var(--azul-fundo); }
.v2-folio p { margin: 0 0 22px; color: var(--texto); }

.v2-abas { display: flex; flex-wrap: wrap; gap: 0 8px; border-bottom: 1px solid var(--filete); }
.v2-abas button { border: none; cursor: pointer; background: transparent; padding: 14px 22px; font-size: 16px; font-weight: 600; margin-bottom: -1px; color: var(--apoio); border-bottom: 3px solid transparent; }
.v2-abas button[aria-pressed="true"] { color: var(--azul-fundo); border-bottom-color: var(--azul); }
.v2-seg { background: var(--branco); border: 1px solid var(--filete); border-top: none; padding: 36px 36px 20px; }
.v2-seg h3 { margin: 0 0 4px; font-family: var(--serif); font-size: 28px; font-weight: 600; color: var(--azul-fundo); }
.v2-seg > p { margin: 0 0 26px; color: var(--apoio); }
.v2-modulos { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 0 40px; }
.v2-modulo { display: flex; gap: 16px; padding: 18px 0; border-top: 1px solid var(--filete-suave); }
.v2-modulo b { flex: 0 0 38px; font-family: var(--serif); font-size: 26px; font-weight: 500; color: var(--latao-filete); line-height: 1.1; }
.v2-modulo strong { display: block; font-size: 16.5px; color: var(--azul-fundo); }
.v2-modulo span { font-size: 15px; color: var(--apoio); line-height: 1.5; }
.v2-mais { margin: 22px 0 0; display: flex; flex-wrap: wrap; gap: 8px 20px; align-items: center; color: var(--texto); }

.v2-faixa-nevoa { background: var(--nevoa); border-top: 1px solid var(--nevoa-borda); border-bottom: 1px solid var(--nevoa-borda); margin-top: 40px; }
.v2-faixa-nevoa .v2-miolo { padding-top: 80px; padding-bottom: 84px; }
.v2-etapas { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 32px; }
.v2-etapas li { border-top: 3px solid var(--azul); padding-top: 20px; }
.v2-etapas .v2-grande { font-family: var(--serif); font-size: 44px; font-weight: 500; color: var(--latao); line-height: 1; }
.v2-etapas h3 { margin: 10px 0 8px; font-size: 19px; color: var(--azul-fundo); }
.v2-etapas p { margin: 0; font-size: 15.5px; color: var(--texto); }

.v2-editorial { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 0 40px; border-top: 2px solid var(--azul-fundo); }
.v2-editorial article { padding: 26px 0 30px; border-bottom: 1px solid var(--filete); }
.v2-editorial .v2-rotulo { font-size: 12px; letter-spacing: 2.5px; margin-bottom: 8px; }
.v2-editorial p { margin: 0 0 16px; color: var(--texto); font-size: 16px; }

.v2-chamada { background: var(--azul-fundo); color: var(--papel); text-align: center; margin-top: 56px; }
.v2-chamada .v2-miolo { max-width: 760px; padding-top: 84px; padding-bottom: 88px; }
.v2-chamada h2 { margin: 0 0 14px; font-family: var(--serif); font-size: 44px; font-weight: 600; letter-spacing: -0.8px; line-height: 1.1; }
.v2-chamada p { margin: 0 auto 30px; color: #D5DCE6; font-size: 18px; }

/* ── Rodapé ───────────────────────────────────────────────────────────── */
.v2-rodape { background: var(--rodape); color: #C9D2DE; font-size: 15px; }
.v2-rodape-colunas { padding-top: 56px; padding-bottom: 28px; display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 40px; }
.v2-rodape a { color: #C9D2DE; }
.v2-rodape a:hover { color: #FFFFFF; }
.v2-rodape-nome { margin: 0; font-family: var(--serif); font-size: 30px; font-weight: 700; color: #FFFFFF; line-height: 1; }
.v2-rodape-sub { margin: 4px 0 14px; font-size: 10.5px; letter-spacing: 4px; font-weight: 600; color: #E0C27A; }
.v2-rodape h4 { margin: 0 0 12px; font-size: 12px; font-weight: 700; letter-spacing: 2.5px; color: #E0C27A; text-transform: uppercase; }
.v2-rodape ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.v2-rodape-fim { padding-bottom: 36px; }
.v2-rodape-fim div { border-top: 1px solid #243A55; padding-top: 20px; font-size: 13.5px; color: #9FAEC0; }

/* ── Download ─────────────────────────────────────────────────────────── */
.v2-migalhas { margin: 0 0 18px; font-size: 14px; color: var(--apoio); }
.v2-migalhas a { color: var(--apoio); }
.v2-instaladores { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(380px, 100%), 1fr)); gap: 28px; align-items: start; }
.v2-cartao-dl { background: var(--branco); border: 1px solid var(--filete); border-top: 4px solid var(--azul); padding: 34px 36px; }
.v2-instalador-unico { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: 48px; align-items: start; }
.v2-instalador-itens h3 { margin: 0 0 12px; font-family: var(--serif); font-size: 20px; color: var(--azul); }
.v2-instalador-itens ul { margin: 0; padding-left: 20px; display: grid; gap: 10px; color: var(--texto); font-size: 15.5px; line-height: 1.5; }
.v2-cartao-dl p.v2-desc { margin: 0 0 22px; color: var(--texto); font-size: 16px; }
.v2-dados { margin: 24px 0 0; border-top: 1px solid var(--filete-suave); }
.v2-dados div { display: grid; grid-template-columns: 110px 1fr; padding: 11px 0; border-bottom: 1px solid var(--filete-suave); }
.v2-dados dt { color: var(--apoio); font-size: 15px; }
.v2-dados dd { margin: 0; font-weight: 600; }
.v2-dados dd.v2-hash { font-family: ui-monospace, Consolas, monospace; font-size: 12.5px; font-weight: 400; word-break: break-all; color: var(--texto); }
.v2-indisponivel { margin: 0; padding: 14px 16px; background: #FBF3DC; border: 1px solid #E6D3A0; color: #5A430F; font-size: 15px; }
.v2-aviso { margin: 16px 0 0; padding: 16px 20px; background: #FBF3DC; border: 1px solid #E6D3A0; color: #5A430F; font-size: 15px; line-height: 1.55; }
.v2-bloco { background: var(--branco); border: 1px solid var(--filete); padding: 30px 34px; margin-top: 28px; }
.v2-bloco h2 { margin: 0 0 14px; font-family: var(--serif); font-size: 30px; font-weight: 600; color: var(--azul-fundo); }
.v2-bloco p, .v2-bloco li { color: var(--texto); }
.v2-bloco code { font-family: ui-monospace, Consolas, monospace; font-size: .92em; background: var(--nevoa); padding: 1px 6px; border-radius: 3px; }

/* ── Telas pequenas ───────────────────────────────────────────────────── */
@media (max-width: 720px) {
  .v2-h1 { font-size: 40px; letter-spacing: -1px; }
  .v2-h2, .v2-chamada h2 { font-size: 32px; }
  .v2-miolo { padding-left: 20px; padding-right: 20px; }
  .v2-hero { padding-top: 40px; gap: 36px; }
  .v2-folio, .v2-seg, .v2-cartao-dl, .v2-bloco { padding-left: 22px; padding-right: 22px; }
  .v2-instalador-unico { grid-template-columns: minmax(0, 1fr); gap: 28px; }
  .v2-confianca div { border-right: none; padding-left: 0; padding-right: 0; border-bottom: 1px solid var(--filete-suave); }
  .v2-drop-painel { position: static; box-shadow: none; margin-top: 6px; }
}

/* ══════════════════════════════════════════════════════════════════════════
   Camada de compatibilidade: dá o visual novo às páginas internas (Segmentos,
   Sobre, PDV, Gestão, Tira-dúvidas, Reforma tributária, Blog e Login) SEM mexer
   no conteúdo delas. Elas continuam usando as classes antigas (faixa, cartao,
   grade, pergunta, artigo, login-*...), que aqui são redesenhadas. Tudo fica
   dentro de `.v2-legado` (o <main> do base_publico_v2.html), então não afeta o
   cabeçalho, o rodapé nem as páginas Início e Download, que usam .v2-*.
   ══════════════════════════════════════════════════════════════════════════ */
.v2-legado {
  display: block;
  /* variáveis do CSS antigo que ainda aparecem em estilos dentro das páginas */
  --navy: #1E3A5F; --navy-claro: #1E3A5F; --navy-escuro: #142942;
  --suave: #4F5B69; --borda: #D9D2C5;
  --fundo: #F7F4EE;   /* era o fundo da página e dos campos: agora o papel */
  --papel: #FFFFFF;   /* era a cor dos cartões: branco */
  --largura-site: 1280px;
}
.v2-legado h2 { margin: 0 0 14px; font-family: var(--serif); font-size: 1.6rem; font-weight: 600; line-height: 1.2; color: var(--azul-fundo); }
.v2-legado ol, .v2-legado ul { margin: 0; padding-left: 22px; }
.v2-legado li { margin-bottom: 8px; }
.v2-legado code { font-family: ui-monospace, Consolas, monospace; font-size: .9em; background: var(--nevoa); padding: 1px 6px; border-radius: 3px; }

/* Faixas e títulos */
.v2-legado .faixa { padding: 64px 32px; }
.v2-legado .faixa-alt { background: var(--branco); border-top: 1px solid var(--filete); border-bottom: 1px solid var(--filete); }
.v2-legado .faixa-conteudo { max-width: var(--largura); margin: 0 auto; }
.v2-legado .faixa-estreita { max-width: 780px; margin: 0 auto; }
.v2-legado .rotulo-secao { margin: 0 0 12px; font-size: 13px; font-weight: 700; letter-spacing: 3px; color: var(--latao); text-transform: uppercase; }
.v2-legado .titulo-secao { margin: 0 0 16px; font-family: var(--serif); font-size: 2.5rem; font-weight: 600; line-height: 1.12; letter-spacing: -0.8px; color: var(--azul-fundo); }
.v2-legado .texto-secao { max-width: 680px; font-size: 1.1rem; color: var(--texto); }
.v2-legado .faixa p { color: var(--texto); }

/* Cartões e grades */
.v2-legado .grade { display: grid; gap: 24px; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); margin-top: 32px; }
.v2-legado .grade-2 { grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)); }
.v2-legado .cartao { background: var(--branco); border: 1px solid var(--filete); border-top: 3px solid var(--azul); border-radius: 2px; padding: 28px; }
.v2-legado .cartao h3 { margin: 0 0 8px; font-family: var(--serif); font-size: 1.3rem; font-weight: 600; line-height: 1.25; color: var(--azul-fundo); }
.v2-legado .cartao p { margin: 0; color: var(--apoio); font-size: 1rem; }
.v2-legado .cartao .rotulo-secao { margin-bottom: 8px; }
.v2-legado a.cartao:hover { border-top-color: var(--latao-filete); box-shadow: 0 10px 24px rgba(20, 41, 66, .10); }
.v2-legado .modulos-mais { display: none; }
.v2-legado .modulos-mais.modulos-mais-aberto { display: grid; }

/* Botões e avisos */
.v2-legado .btn { display: inline-block; background: var(--azul); color: #FFFFFF !important; text-decoration: none; padding: 15px 32px; border-radius: 3px; font-size: 1rem; font-weight: 600; border: 2px solid var(--azul); cursor: pointer; }
.v2-legado .btn:hover { background: var(--azul-fundo); border-color: var(--azul-fundo); }
.v2-legado .btn-linha { background: transparent; color: var(--azul) !important; }
.v2-legado .btn-linha:hover { background: var(--azul); color: #FFFFFF !important; }
.v2-legado .btn-claro { background: var(--papel); color: var(--azul-fundo) !important; border-color: transparent; }
.v2-legado .aviso { border-left: 3px solid var(--latao-filete); padding: 2px 0 2px 16px; color: var(--apoio); font-size: .97rem; margin-top: 16px; }
.v2-legado a { color: var(--azul); }
.v2-legado a:hover { color: var(--azul-fundo); }

/* Formulários (login e cadastro) */
.v2-legado .campo { margin-bottom: 16px; text-align: left; }
.v2-legado .campo label { display: block; font-weight: 600; font-size: .92rem; margin-bottom: 6px; color: var(--tinta); }
.v2-legado .campo input { width: 100%; padding: 12px 14px; border: 1px solid #BFB7A8; border-radius: 3px; background: var(--branco); color: var(--tinta); font-size: 1rem; font-family: inherit; }
.v2-legado .campo input:focus { outline: 3px solid var(--latao-filete); outline-offset: 0; border-color: var(--azul); }
.v2-legado .campo-status { color: var(--apoio); font-size: .85rem; margin-top: 4px; min-height: 1.2em; }
.v2-legado .alerta-erro { background: #FDECEA; border: 1px solid #F3B4AC; color: #9A1F13; border-radius: 3px; padding: 12px 16px; margin-bottom: 18px; font-size: .95rem; }
.v2-legado .chave-gerada { font-family: ui-monospace, Consolas, monospace; font-size: 1.3rem; font-weight: 700; letter-spacing: .04em; color: var(--azul); background: var(--branco); border: 2px dashed var(--latao-filete); border-radius: 3px; padding: 18px; text-align: center; word-break: break-all; margin: 20px 0; }

/* Perguntas frequentes */
.v2-legado .pergunta { background: var(--branco); border: 1px solid var(--filete); border-left: 3px solid var(--azul); border-radius: 2px; margin-bottom: 12px; padding: 2px 0; }
.v2-legado .pergunta summary { padding: 16px 22px; cursor: pointer; font-family: var(--serif); font-size: 1.18rem; font-weight: 600; color: var(--azul-fundo); list-style: none; display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.v2-legado .pergunta summary::-webkit-details-marker { display: none; }
.v2-legado .pergunta summary::after { content: "+"; font-family: var(--sans); font-size: 1.5rem; color: var(--latao); font-weight: 400; flex-shrink: 0; }
.v2-legado .pergunta[open] summary::after { content: "–"; }
.v2-legado .pergunta-corpo { padding: 0 22px 18px; color: var(--texto); }
.v2-legado .pergunta-corpo p { margin: 0 0 10px; color: var(--texto); }
.v2-legado .pergunta-corpo p:last-child { margin-bottom: 0; }

/* Blog */
.v2-legado .post-data { color: var(--apoio); font-size: .85rem; letter-spacing: .04em; margin-bottom: 6px; }
.v2-legado .artigo { max-width: 740px; margin: 0 auto; padding: 56px 32px 80px; }
.v2-legado .artigo h1 { margin: 8px 0 12px; font-family: var(--serif); font-size: 2.5rem; font-weight: 600; line-height: 1.12; letter-spacing: -0.8px; color: var(--azul-fundo); }
.v2-legado .artigo h2 { margin: 38px 0 14px; font-family: var(--serif); font-size: 1.6rem; font-weight: 600; color: var(--azul-fundo); }
.v2-legado .artigo p, .v2-legado .artigo li { font-size: 1.08rem; line-height: 1.75; color: var(--texto); }
.v2-legado .artigo p { margin: 0 0 18px; }
.v2-legado .meta-artigo { color: var(--apoio); font-size: .92rem; margin-bottom: 34px; padding-bottom: 20px; border-bottom: 1px solid var(--filete); }
.v2-legado .voltar-link { display: inline-block; margin-bottom: 24px; font-size: .95rem; font-weight: 600; text-decoration: none; }

/* Login: informações · entrar · criar conta */
.v2-legado .login-grade { display: grid; grid-template-columns: 1.15fr 1fr 1fr; gap: 32px; padding: 56px 0; }
.v2-legado .login-recursos { list-style: none; margin: 0 0 20px; padding: 0; display: flex; flex-direction: column; gap: 16px; }
.v2-legado .login-recursos li { display: flex; flex-direction: column; gap: 2px; margin: 0; padding-left: 14px; border-left: 3px solid var(--latao-filete); }
.v2-legado .login-recursos strong { color: var(--azul-fundo); font-size: 1rem; }
.v2-legado .login-recursos span { color: var(--apoio); font-size: .92rem; }
.v2-legado .login-cartao { display: flex; flex-direction: column; }
.v2-legado .login-cartao h2 { font-size: 1.9rem; }
.v2-legado .login-form { display: flex; flex-direction: column; flex: 1; }
.v2-legado .login-botao { margin-top: auto; }

@media (max-width: 960px) {
  .v2-legado .login-grade { grid-template-columns: 1fr; }
}
@media (max-width: 720px) {
  .v2-legado .faixa { padding: 44px 20px; }
  .v2-legado .titulo-secao, .v2-legado .artigo h1 { font-size: 1.85rem; }
  .v2-legado .artigo { padding: 40px 20px 60px; }
  .v2-legado .cartao { padding: 22px; }
}
