/* Identity adapted from Radar Licitações: navy, copper, paper. */

  :root{--navy:#122B4A;--navy-deep:#0B1B2E;
        --accent:#A85E32;--accent-vivo:#BE6F3E;--accent-dark:#96562F;
        --accent-claro:#D08B5A;
        --ink:#16202E;--mut:#5A6472;--line:#E3E1DB;--line-strong:#CFCCC4;
        --bg:#FBFAF8;--surface:#FFFFFF;--surface-alt:#F3F1EC;
        --ok:#2C6B45;--ok-bg:#E8F1EA;--warn:#A8412B;--warn-bg:#F7EAE6}
  *{box-sizing:border-box}
  /* RODAPÉ NO PÉ DA JANELA, SEMPRE. Em página curta (ex.: /recebiveis vazia) o
     rodapé parava no meio da tela, colado no conteúdo, e o resto da janela era
     preenchido pelo overscroll do navegador — no Safari em modo escuro, uma
     mancha azul-acinzentada que parecia página quebrada. body vira coluna
     flex de altura mínima 100vh e o footer ganha margin-top:auto: conteúdo
     curto empurra o rodapé pro fundo; conteúdo longo se comporta como sempre.
     O html leva o mesmo fundo pro overscroll ter a cor do papel, e
     color-scheme declara que esta página é clara — sem isso o Safari escuro
     escolhe a cor do canvas por conta própria. */
  html{background:var(--bg);color-scheme:light}
  body{margin:0;font-family:'IBM Plex Sans',-apple-system,'Segoe UI',Arial,sans-serif;background:var(--bg);color:var(--ink);line-height:1.6;
        -webkit-font-smoothing:antialiased;min-height:100vh;display:flex;flex-direction:column}
  body > *{flex:none;width:100%}
  h1,h2,h3{font-family:'Spectral',Georgia,'Times New Roman',serif;font-weight:600;letter-spacing:-.005em;line-height:1.2}
  a{color:var(--navy)}
  a:hover{color:var(--accent-dark)}

  /* FOCO VISÍVEL POR TECLADO, GLOBAL — em QUALQUER fundo (navy OU papel).
     O padrão do navegador (anel azul fino) sumia sobre o navy e mal aparecia
     no papel. Um único anel de cobre resolve só metade: --accent-vivo dá 3,6:1
     no papel e 3,8:1 no navy — passa o mínimo 3:1 do WCAG 2.4.11, mas fica
     colado demais no azul. Por isso o foco é um anel DUPLO: outline cobre +
     um halo branco (--surface) por trás. Sobre navy o halo claro (~14:1)
     separa o cobre do fundo; sobre papel o halo some (é a cor do fundo) e o
     cobre segura sozinho. Os dois juntos garantem ≥3:1 onde quer que o
     elemento esteja. */
  a:focus-visible,
  .btn:focus-visible,
  button:focus-visible,
  [role="button"]:focus-visible {
    outline:3px solid var(--accent-vivo);
    outline-offset:2px;
    box-shadow:0 0 0 5px var(--surface)
  }
  .num{font-variant-numeric:tabular-nums}
  .mono{font-family:'IBM Plex Mono',ui-monospace,monospace}

  /* `overflow-x:clip` (não `hidden`) porque o painel do menu precisa continuar
     saindo pra BAIXO da barra — clip corta só na horizontal e deixa o eixo
     vertical `visible`. É o cinto: com dois menus, larguras entre ~980 e
     ~1120px ainda achavam um jeito de empurrar o documento pro lado. */
  .topbar{background:var(--navy);overflow-x:clip;position:relative}
  .topbar .in{max-width:1080px;margin:0 auto;padding:18px 32px;display:flex;
               justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}
  .brand{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;
          font-family:'Spectral',Georgia,'Times New Roman',serif;font-size:19px;font-weight:600}
  .brand .mark{width:26px;height:26px;border-radius:50%;border:2px solid var(--accent-vivo);
                position:relative;flex:0 0 auto}
  .brand .mark::after{content:'';position:absolute;inset:7px;border-radius:50%;background:var(--accent-vivo)}
  .topbar nav{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
  .topbar nav a{color:#C3CCDA;text-decoration:none;font-size:13.5px;white-space:nowrap}
  .topbar nav a:hover{color:#fff}
  /* O botão do topo herdava o cinza-claro dos links do nav (#C3CCDA sobre o
     cobre = 3,0:1). Especificidade: `.topbar nav a` ganha de `.btn`, então o
     branco precisa ser dito aqui de novo. */
  .topbar nav a.btn{color:#fff}

  /* Submenu. CSS puro: abre no hover e no foco por teclado. Sem JS, então
     funciona antes de qualquer script carregar e não quebra se um bloqueador
     atrapalhar. */
  .topbar .menu{position:relative}
  .topbar .menu > a{display:inline-flex;align-items:center;gap:6px}
  .topbar .menu .seta{width:0;height:0;border-left:4px solid transparent;
    border-right:4px solid transparent;border-top:4.5px solid currentColor;
    opacity:.7;transition:transform .15s}
  .topbar .menu:hover .seta,.topbar .menu:focus-within .seta{transform:rotate(180deg)}
  .topbar .sub{position:absolute;top:100%;left:-14px;margin-top:10px;min-width:286px;
    background:#fff;border:1px solid rgba(16,32,54,.12);border-radius:10px;padding:8px;
    box-shadow:0 10px 34px rgba(11,27,46,.20);opacity:0;visibility:hidden;
    transform:translateY(-6px);transition:opacity .16s,transform .16s,visibility .16s;z-index:60}
  /* a faixa invisível cobre o vão entre o item e o painel: sem ela o menu
     fecha quando o mouse atravessa os 10px de margem */
  .topbar .sub::before{content:'';position:absolute;left:0;right:0;top:-12px;height:12px}
  .topbar .menu:hover .sub,.topbar .menu:focus-within .sub{opacity:1;visibility:visible;transform:translateY(0)}
  /* O ÚLTIMO menu abre pra ESQUERDA. Ancorado em `left:-14px` com 286px de
     largura, o painel de "Quem somos" passava da borda direita: em 1100px de
     viewport o DOCUMENTO INTEIRO rolava de lado (74px medidos), porque
     `visibility:hidden` mantém a caixa no layout — a barra aparecia em toda
     página do site, com o menu fechado. E aberto ele saía cortado. */
  .topbar .menu:last-of-type .sub{left:auto;right:-14px}
  .topbar .sub a{display:block;padding:10px 13px;border-radius:7px;color:var(--ink);
    white-space:normal;transition:background .13s}
  .topbar .sub a:hover{background:#F4F6F9;color:var(--ink)}
  .topbar .sub b{display:block;font-size:13.5px;font-weight:600}
  .topbar .sub span{display:block;font-size:11.5px;color:#5A6B82;margin-top:2px;line-height:1.4}

  /* O MENU DO CELULAR mora num <details> FECHADO (29/08/2026). Antes, em
     ≤760px os dois submenus abriam como lista fixa e a primeira tela do
     telefone era o menu: o <h1> começava a ~590px, e quem chega do Google via
     navegação em vez do pitch. <details>/<summary> pela mesma razão do
     acordeão: funciona sem JavaScript, teclado abre e fecha, o leitor de tela
     anuncia o estado. Escondido no desktop; o CTA fica FORA dele, sempre à
     vista na barra. */
  .topbar .menu-cel,.topbar .cta-cel{display:none}
  .topbar .menu-cel summary{list-style:none;cursor:pointer;display:flex;align-items:center;
    padding:8px;margin:-8px;border-radius:6px}
  .topbar .menu-cel summary::-webkit-details-marker{display:none}
  .topbar .menu-cel summary:focus-visible{outline:2px solid #fff;outline-offset:2px}
  .topbar .menu-cel .ico-fechar,.topbar .menu-cel[open] .ico-abrir{display:none}
  .topbar .menu-cel[open] .ico-fechar{display:block}
  /* align-items e gap ditos de novo DE PROPÓSITO: `.topbar navEllipsis` também
     casa com este <nav> e vaza `align-items:center` + `gap:20px` pra dentro
     do painel — foi o que centralizou os itens na primeira renderização. */
  .topbar .cel-nav{position:absolute;left:0;right:0;top:100%;z-index:70;background:var(--navy);
    border-top:1px solid rgba(255,255,255,.10);box-shadow:0 26px 44px rgba(11,27,46,.45);
    padding:8px 20px 22px;display:flex;flex-direction:column;align-items:stretch;gap:0}
  .topbar .cel-nav > a{font-size:15px;font-weight:600;color:#fff;text-decoration:none;
    padding:12px 0;border-bottom:1px solid rgba(255,255,255,.08)}
  .topbar .cel-nav > a:last-child{border-bottom:none}
  .topbar .cel-grupo{padding:12px 0;border-bottom:1px solid rgba(255,255,255,.08)}
  .topbar .cel-grupo > a{display:block;font-size:15px;font-weight:600;color:#fff;
    text-decoration:none;margin-bottom:8px}
  .topbar .cel-grupo div{border-left:1px solid rgba(255,255,255,.16)}
  .topbar .cel-grupo div a{display:block;font-size:13.5px;color:#C3CCDA;text-decoration:none;
    padding:7px 0 7px 14px}

  .wrap{max-width:1080px;margin:0 auto;padding:0 32px}
  .btn{display:inline-block;background:var(--navy);color:#fff;text-decoration:none;font-size:14px;
        font-weight:600;padding:13px 24px;border-radius:4px;border:0;cursor:pointer;font-family:'IBM Plex Sans',-apple-system,'Segoe UI',Arial,sans-serif}
  .btn:hover{background:#0E2340;color:#fff}
  /* var(--accent) é o cobre acessível (4,87:1 com o branco). NÃO trocar pelo
     --accent-vivo aqui: ele dá 3,8:1 e foi o que derrubou a acessibilidade da
     home no PageSpeed em 28/08/2026. */
  .btn.gold{background:var(--accent)}
  .btn.gold:hover{background:#96562F}
  .btn.ghost{background:transparent;border:1px solid var(--navy);color:var(--navy)}
  /* .ghost sobre fundo NAVY. O .ghost puro é navy-sobre-transparente: certo no
     papel e INVISÍVEL no navy (1:1 — texto e borda somem). Isso não é hipótese:
     o CTA "Ver uma análise real antes" do hero do /radar-ia ficou invisível em
     produção de 30/08 a 04/09/2026, porque copiou o `margin-left` do vizinho e
     não o par de cor. Cinco chamadas escreviam `border-color:#46608A;color:#fff`
     à mão e a sexta esqueceu — é a mesma forma do bug do cobre em 28/08: o
     PADRÃO é o valor que falha, e o certo depende de alguém lembrar.
     Aqui o certo tem nome. Sobre navy, use `class="btn ghost claro"`. */
  .btn.ghost.claro{border-color:#46608A;color:#fff}
  .btn.ghost.claro:hover{border-color:#7E93B4;background:rgba(255,255,255,.06)}
  .card{background:var(--surface);border:1px solid var(--line);border-radius:8px}
  .eyebrow{font-size:11px;letter-spacing:.14em;text-transform:uppercase;
            color:var(--accent-dark);font-weight:600}
  /* Sobre NAVY o --accent-dark dá 2,50:1 e o rótulo some. Use
     `class="eyebrow claro"` em qualquer bloco navy. */
  .eyebrow.claro{color:var(--accent-claro)}
  .pill{display:inline-block;background:var(--surface);border:1px solid var(--line);
         border-radius:99px;padding:5px 12px;font-size:12.5px;color:var(--mut)}
  .pill.urgente{background:var(--warn-bg);border-color:transparent;color:var(--warn);font-weight:600}
  .pill.ok{background:var(--ok-bg);border-color:transparent;color:var(--ok);font-weight:600}

  footer{background:var(--navy-deep);color:#8B99AC;margin-top:auto}
  footer .in{max-width:1080px;margin:0 auto;padding:28px 32px;font-size:12.5px;line-height:1.8;
              display:flex;justify-content:space-between;gap:32px;flex-wrap:wrap}
  footer a{color:#8B99AC}
  footer a:hover{color:#fff}
  footer b{color:#C3CCDA}
  @media(max-width:760px){
    .topbar .in{padding:14px 20px;flex-wrap:nowrap;gap:12px}
    .wrap{padding:0 20px} footer .in{padding:24px 20px}
    /* o nav do desktop some INTEIRO; quem serve o celular é o .menu-cel, que
       renderiza a MESMA lista (_NAV) — uma fonte, dois desenhos */
    .topbar nav{display:none}
    .topbar .cta-cel{display:inline-block;font-size:12.5px;padding:9px 13px;white-space:nowrap;
      margin-left:auto}
    .topbar .menu-cel{display:block}
    .brand{font-size:16.5px}
  }
