/* Estilo comum das páginas institucionais (modalidades e dúvidas) */
:root{
  --azul:#0B4F9E; --azul-esc:#083A75; --laranja:#F39200; --verde:#1B8A4B; --zap:#128C4A;
  --tinta:#16202B; --cinza:#6B7785; --linha:#E3E8EE; --fundo:#F5F7FA;
  --sombra:0 1px 3px rgba(16,32,48,.08), 0 8px 24px rgba(16,32,48,.06);
}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:"Segoe UI",system-ui,-apple-system,Roboto,Arial,sans-serif;background:var(--fundo);
  color:var(--tinta);line-height:1.62;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:var(--azul)}
.wrap{max-width:960px;margin:0 auto;padding:0 20px}

/* topo */
.topo{background:linear-gradient(135deg,var(--azul),var(--azul-esc));color:#fff;padding:16px 0 22px}
.nav{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.nav .logo{height:40px;width:auto;background:#fff;border-radius:8px;padding:4px 7px;flex:none}
.nav .marca{font-size:12.5px;line-height:1.3;opacity:.92}
.nav .marca b{display:block;font-size:13.5px;font-weight:700;opacity:1}
.nav .links{margin-left:auto;display:flex;gap:6px;flex-wrap:wrap}
.nav .links a{color:#fff;text-decoration:none;font-size:13.5px;font-weight:600;padding:9px 13px;
  border-radius:8px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);min-height:40px;
  display:flex;align-items:center}
.nav .links a:hover{background:rgba(255,255,255,.24)}
.nav .links a.on{background:#fff;color:var(--azul);border-color:#fff}
.titulo{margin-top:22px}
.titulo h1{font-size:27px;font-weight:800;letter-spacing:-.5px}
.titulo p{font-size:15px;opacity:.9;margin-top:6px;max-width:640px}

main{padding:26px 0 60px}
.bloco{background:#fff;border-radius:14px;box-shadow:var(--sombra);padding:26px 28px;margin-bottom:18px}
.bloco h2{font-size:19px;font-weight:800;letter-spacing:-.3px;margin-bottom:12px}
.bloco h3{font-size:14px;text-transform:uppercase;letter-spacing:.6px;color:var(--laranja);margin:20px 0 8px}
.bloco p{margin-bottom:12px}
.bloco p:last-child{margin-bottom:0}
.bloco ul{list-style:none;margin:0 0 12px}
.bloco li{padding-left:20px;position:relative;margin-bottom:8px}
.bloco li:before{content:"";position:absolute;left:2px;top:9px;width:7px;height:7px;border-radius:50%;
  background:var(--laranja)}

/* cartão de modalidade */
.mod{border-left:5px solid var(--azul)}
.mod .selo{display:inline-block;background:var(--azul);color:#fff;font-size:11px;font-weight:700;
  text-transform:uppercase;letter-spacing:.6px;padding:5px 11px;border-radius:20px;margin-bottom:12px}
.mod.direta{border-left-color:var(--verde)} .mod.direta .selo{background:var(--verde)}
.mod.online{border-left-color:var(--laranja)} .mod.online .selo{background:var(--laranja);color:#3A2200}
.resumo{background:var(--fundo);border-radius:10px;padding:14px 16px;margin:14px 0;font-size:14.5px}
.resumo b{color:var(--azul)}

/* tabela comparativa */
.tabela{width:100%;border-collapse:collapse;font-size:14px;margin-top:6px}
.tabela th{background:var(--azul);color:#fff;text-align:left;padding:11px 12px;font-size:12px;
  text-transform:uppercase;letter-spacing:.5px}
.tabela td{padding:11px 12px;border-bottom:1px solid var(--linha);vertical-align:top}
.tabela tr:last-child td{border-bottom:0}
.tabela td:first-child{font-weight:700;color:var(--cinza)}
.rolar-x{overflow-x:auto;-webkit-overflow-scrolling:touch}

/* passo a passo */
.passos{counter-reset:p;list-style:none}
.passos li{counter-increment:p;padding-left:44px;position:relative;margin-bottom:14px}
.passos li:before{content:counter(p);position:absolute;left:0;top:0;width:30px;height:30px;border-radius:50%;
  background:var(--azul);color:#fff;font-weight:800;font-size:14px;display:flex;align-items:center;
  justify-content:center}
.passos b{display:block}

/* dúvidas (accordion) */
.faq{border-bottom:1px solid var(--linha)}
.faq:last-child{border-bottom:0}
.faq button{width:100%;text-align:left;font:inherit;font-size:15.5px;font-weight:700;color:var(--tinta);
  background:none;border:0;padding:16px 34px 16px 0;cursor:pointer;position:relative;min-height:52px}
.faq button:after{content:"+";position:absolute;right:6px;top:50%;transform:translateY(-50%);
  font-size:22px;font-weight:400;color:var(--azul)}
.faq button[aria-expanded="true"]:after{content:"–"}
.faq .resposta{display:none;padding:0 0 16px;color:var(--tinta)}
.faq button[aria-expanded="true"] + .resposta{display:block}

/* alerta */
.aviso{background:#FFF6E6;border:1px solid #F5D9A6;border-radius:12px;padding:16px 18px;font-size:14px;
  display:flex;gap:12px;align-items:flex-start}
.aviso b{color:#8A5A00}

/* CTA WhatsApp */
.cta-box{background:linear-gradient(135deg,var(--azul),var(--azul-esc));color:#fff;text-align:center;
  border-radius:14px;padding:28px 24px;box-shadow:var(--sombra)}
.cta-box img{width:96px;height:auto;margin-bottom:8px}
.cta-box h2{font-size:20px;font-weight:800;margin-bottom:6px}
.cta-box p{font-size:14.5px;opacity:.92;max-width:520px;margin:0 auto 18px}
.zap{display:inline-flex;align-items:center;justify-content:center;gap:9px;background:var(--zap);color:#fff;
  font-size:16px;font-weight:800;padding:15px 30px;border-radius:10px;text-decoration:none;min-height:52px;
  box-shadow:0 4px 14px rgba(18,140,74,.3)}
.zap:hover{background:#0E7A40}
.zap svg{width:20px;height:20px;fill:#fff;flex:none}

/* documentos oficiais */
.docs{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px}
.docs a{display:block;background:#fff;border:1.5px solid var(--linha);border-radius:10px;padding:14px 16px;
  text-decoration:none;color:var(--tinta);font-size:14px;font-weight:600;transition:border-color .15s}
.docs a:hover{border-color:var(--azul);color:var(--azul)}
.docs span{display:block;font-size:12px;font-weight:400;color:var(--cinza);margin-top:3px}

footer{border-top:1px solid var(--linha);padding:26px 0;text-align:center;color:var(--cinza);font-size:12.5px}
footer img{width:74px;height:auto;opacity:.9;display:block;margin:0 auto 8px}

:focus-visible{outline:3px solid rgba(11,79,158,.5);outline-offset:2px}
@media(max-width:760px){
  .titulo h1{font-size:22px}
  .bloco{padding:20px 18px}
  .nav .links{margin-left:0;width:100%}
  .nav .links a{flex:1;justify-content:center;font-size:12.5px;padding:9px 6px}
  .cta-box{padding:24px 16px}
}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
