/* APROVADI — site institucional
   Mesma identidade do simulador: azul da marca, amarelo de sinal, Comfortaa nos
   títulos e Source Sans 3 no texto, servidas pelo próprio site. */

@font-face{font-family:'Comfortaa';font-weight:500;font-display:swap;src:url(/fontes/comfortaa-500.woff2) format('woff2');}
@font-face{font-family:'Comfortaa';font-weight:700;font-display:swap;src:url(/fontes/comfortaa-700.woff2) format('woff2');}
@font-face{font-family:'Source Sans 3';font-weight:400;font-display:swap;src:url(/fontes/sourcesans3-400.woff2) format('woff2');}
@font-face{font-family:'Source Sans 3';font-weight:600;font-display:swap;src:url(/fontes/sourcesans3-600.woff2) format('woff2');}
@font-face{font-family:'Source Sans 3';font-weight:700;font-display:swap;src:url(/fontes/sourcesans3-700.woff2) format('woff2');}

:root{
  --brand:#004D9B; --brand-hover:#013F80; --escuro:#081736; --escuro-2:#0F2350;
  --soft:#E4EDF8; --linha:#D8E0EB; --ground:#F3F6FA; --ink:#081736; --suave:#4A5A78;
  --claro:#B9CCE6; --sinal:#F9BC06; --sinal-hover:#FFD04A; --sinal-texto:#3F2F00;
  --display:'Comfortaa',system-ui,sans-serif; --body:'Source Sans 3',system-ui,sans-serif;
  --raio:14px; --largura:1080px;
}
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;}
body{font-family:var(--body);color:var(--ink);background:var(--ground);
     line-height:1.6;font-size:17px;-webkit-font-smoothing:antialiased;}
img,svg{max-width:100%;display:block;}
a{color:var(--brand);}
a:hover{color:var(--brand-hover);}
.env{max-width:var(--largura);margin:0 auto;padding:0 20px;}
.pular{position:absolute;left:-9999px;top:0;background:#fff;padding:8px 12px;z-index:10;}
.pular:focus{left:8px;top:8px;}
:focus-visible{outline:3px solid var(--sinal);outline-offset:2px;}

/* ------------------------------------------------------------ topo */
.topo{background:var(--escuro);color:#fff;position:relative;z-index:5;}
.topo .env{display:flex;align-items:center;justify-content:space-between;gap:20px;
           min-height:74px;}
.logo{display:block;width:123px;flex:0 0 auto;}
.logo img{width:100%;height:auto;}
.nav{display:flex;align-items:center;gap:4px;}
.nav a{color:#DCE6F4;text-decoration:none;font-size:15px;padding:8px 11px;border-radius:8px;
       white-space:nowrap;}
.nav a:hover{color:#fff;background:rgba(255,255,255,.07);}
.nav a[aria-current=page]{color:#fff;box-shadow:inset 0 -2px 0 var(--sinal);border-radius:0;}
.nav .botao{margin-left:10px;border-radius:99px;}
.menu{display:none;}
.menu summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:8px;
              font-family:var(--display);font-weight:700;font-size:15px;color:#fff;
              padding:9px 14px;border:1.5px solid #34486E;border-radius:99px;}
.menu summary::-webkit-details-marker{display:none;}
.menu summary .tracos{width:16px;height:2px;background:#fff;position:relative;}
.menu summary .tracos::before,.menu summary .tracos::after{content:"";position:absolute;left:0;
  width:16px;height:2px;background:#fff;}
.menu summary .tracos::before{top:-5px;} .menu summary .tracos::after{top:5px;}
.menu[open] summary{background:rgba(255,255,255,.08);}
.menu .gaveta{position:absolute;left:0;right:0;top:100%;background:var(--escuro);
              border-top:1px solid #1C2F57;padding:8px 20px 22px;
              box-shadow:0 18px 30px rgba(8,23,54,.35);}
.menu .gaveta a{display:block;color:#fff;text-decoration:none;font-size:17px;
                padding:13px 4px;border-bottom:1px solid #1C2F57;}
.menu .gaveta a[aria-current=page]{color:var(--sinal);}
.menu .gaveta .botao{margin-top:18px;width:100%;justify-content:center;border:0;}

/* ------------------------------------------------------------ botões */
.botao{display:inline-flex;align-items:center;gap:10px;font-family:var(--display);
       font-weight:700;font-size:16px;text-decoration:none;padding:14px 24px;
       border-radius:99px;transition:background .15s,border-color .15s,color .15s;
       line-height:1.2;text-align:center;}
.botao.primario{background:var(--sinal);color:var(--sinal-texto);}
.botao.primario:hover{background:var(--sinal-hover);color:var(--sinal-texto);}
.botao.secundario{background:transparent;color:#fff;border:1.5px solid #3D5382;}
.botao.secundario:hover{border-color:#8FB2E0;color:#fff;}
.botao.azul{background:var(--brand);color:#fff;}
.botao.azul:hover{background:var(--brand-hover);color:#fff;}
.botao.contorno{background:#fff;color:var(--brand);border:1.5px solid var(--linha);}
.botao.contorno:hover{border-color:var(--brand);}
.nav .botao{padding:10px 18px;font-size:15px;}
.acoes{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px;}

/* ------------------------------------------------------------ capa */
.capa{background:var(--escuro);color:#fff;padding:54px 0 78px;position:relative;overflow:hidden;}
.capa::after{content:"";position:absolute;right:-140px;top:-120px;width:520px;height:520px;
  border-radius:50%;background:radial-gradient(circle,rgba(0,77,155,.55),rgba(0,77,155,0) 68%);
  pointer-events:none;}
.capa .env{position:relative;z-index:1;}
.rotulo{font-family:var(--display);font-weight:700;font-size:12px;letter-spacing:.16em;
        text-transform:uppercase;color:var(--sinal);margin-bottom:16px;}
.capa h1{font-family:var(--display);font-weight:700;font-size:clamp(31px,5.4vw,52px);
         line-height:1.13;letter-spacing:-.015em;max-width:17ch;margin-bottom:20px;}
.capa .chamada{font-size:clamp(17px,2.2vw,20px);color:var(--claro);max-width:58ch;line-height:1.55;}
.capa.interna{padding:44px 0 58px;}
.capa.interna h1{font-size:clamp(28px,4.6vw,44px);max-width:20ch;}
.trilha{font-size:14px;color:#8FA6C8;margin-bottom:18px;}
.trilha a{color:#B9CCE6;text-decoration:none;}
.trilha a:hover{color:#fff;text-decoration:underline;}
.selos{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:26px;color:var(--claro);font-size:15px;}
.selos span{display:inline-flex;align-items:center;gap:8px;}
.selos span::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--sinal);}

/* capa da página inicial: texto + quadro do que o simulador mostra */
.capa-grade{display:grid;grid-template-columns:1.3fr .9fr;gap:56px;align-items:center;}
.previa{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:18px;
        padding:28px 28px 26px;backdrop-filter:blur(2px);}
.previa h2{color:#fff;font-size:19px;margin-bottom:18px;max-width:none;}
.previa ul{list-style:none;display:grid;gap:12px;}
.previa li{display:flex;justify-content:space-between;align-items:baseline;gap:14px;
           padding-bottom:12px;border-bottom:1px dashed rgba(255,255,255,.16);color:var(--claro);font-size:16px;}
.previa li:last-child{border-bottom:0;padding-bottom:0;}
.previa li b{font-family:var(--display);color:#fff;font-weight:700;font-size:15px;white-space:nowrap;}
.previa .nota{margin-top:18px;font-size:13.5px;color:#8FA6C8;}

/* ------------------------------------------------------------ seções */
main{display:block;}
.secao{padding:72px 0;}
.secao.branca{background:#fff;border-top:1px solid var(--linha);border-bottom:1px solid var(--linha);}
.secao + .secao.branca, .secao.branca + .secao{border-top-color:var(--linha);}
h2{font-family:var(--display);font-weight:700;font-size:clamp(24px,3.4vw,32px);color:var(--escuro);
   line-height:1.22;letter-spacing:-.01em;margin-bottom:14px;max-width:26ch;}
.intro{color:var(--suave);font-size:18px;max-width:62ch;margin-bottom:36px;}
h3{font-family:var(--display);font-weight:700;font-size:19px;color:var(--escuro);line-height:1.3;
   margin-bottom:10px;}
p + p{margin-top:12px;}
.texto{max-width:70ch;}
.texto p,.texto li{color:#26375A;}
.texto h2{margin-top:44px;}
.texto h2:first-child{margin-top:0;}
.texto h3{margin-top:28px;}
.texto ul,.texto ol{margin:12px 0 0 22px;}
.texto li{margin-bottom:6px;}
.texto .miudo{color:var(--suave);}

/* cartões de produto */
.grade{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));}
.cartao{background:#fff;border:1px solid var(--linha);border-radius:var(--raio);padding:28px 26px;
        display:flex;flex-direction:column;}
.cartao p{color:var(--suave);font-size:16px;}
.cartao .marcador{width:34px;height:4px;background:var(--sinal);border-radius:2px;margin-bottom:18px;}
a.cartao{text-decoration:none;color:inherit;transition:border-color .15s,transform .15s,box-shadow .15s;}
a.cartao:hover{border-color:var(--brand);transform:translateY(-2px);
               box-shadow:0 10px 26px rgba(8,23,54,.08);}
a.cartao .ir{margin-top:auto;padding-top:18px;font-family:var(--display);font-weight:700;
             font-size:15px;color:var(--brand);}
a.cartao .ir::after{content:" →";}

/* passos */
.passos{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));counter-reset:p;}
.passo{position:relative;padding:26px 24px 24px;background:#fff;border:1px solid var(--linha);
       border-radius:var(--raio);counter-increment:p;}
.passo::before{content:counter(p);display:flex;align-items:center;justify-content:center;
  width:38px;height:38px;border-radius:50%;background:var(--escuro);color:var(--sinal);
  font-family:var(--display);font-weight:700;font-size:17px;margin-bottom:16px;}
.passo p{color:var(--suave);font-size:16px;}
.secao.branca .passo{background:var(--ground);}

/* lista com marcas */
.lista{list-style:none;margin:0;display:grid;gap:14px;}
.lista li{position:relative;padding-left:30px;color:#26375A;}
.lista li::before{content:"";position:absolute;left:0;top:.55em;width:16px;height:9px;
  border-left:2.5px solid var(--brand);border-bottom:2.5px solid var(--brand);transform:rotate(-45deg);}
.lista b{color:var(--escuro);}
.duas{display:grid;gap:40px;grid-template-columns:1fr 1fr;align-items:start;}

/* caixa de destaque */
.destaque{background:var(--soft);border-left:4px solid var(--brand);border-radius:0 12px 12px 0;
          padding:20px 22px;margin:26px 0;color:var(--escuro);}
.destaque.atencao{background:#FFF8E5;border-left-color:var(--sinal);color:#4D3B00;}
.destaque p{color:inherit;}

/* perguntas */
.perguntas{max-width:78ch;}
.perguntas details{background:#fff;border:1px solid var(--linha);border-radius:12px;margin-bottom:10px;}
.perguntas summary{cursor:pointer;list-style:none;padding:18px 52px 18px 20px;font-weight:600;
                   color:var(--escuro);position:relative;font-size:17px;}
.perguntas summary::-webkit-details-marker{display:none;}
.perguntas summary::after{content:"";position:absolute;right:22px;top:50%;width:10px;height:10px;
  border-right:2.5px solid var(--brand);border-bottom:2.5px solid var(--brand);
  transform:translateY(-70%) rotate(45deg);transition:transform .15s;}
.perguntas details[open] summary::after{transform:translateY(-30%) rotate(-135deg);}
.perguntas .resp{padding:0 20px 20px;color:var(--suave);}
.secao.branca .perguntas details{background:var(--ground);}

/* bancos */
.bancos{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px;}
.bancos span{background:var(--soft);color:var(--brand);font-weight:700;font-size:15px;
             padding:9px 18px;border-radius:99px;}

/* canais das instituições (Res. CMN 4.935/2021, art. 14, III) */
.canais{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-top:10px;}
.canal{background:#fff;border:1px solid var(--linha);border-radius:12px;padding:20px 22px;font-size:15px;}
.secao.branca .canal{background:var(--ground);}
.canal h3{font-size:17px;margin-bottom:2px;}
.canal .razao{color:var(--suave);font-size:13.5px;margin-bottom:12px;}
.canal dl{display:grid;grid-template-columns:auto 1fr;gap:4px 14px;}
.canal dt{color:var(--suave);}
.canal dd{font-weight:600;color:var(--escuro);}
.canal .via{margin-top:12px;padding-top:10px;border-top:1px dashed var(--linha);color:var(--suave);font-size:13.5px;}

/* chamada final */
.faixa{background:var(--escuro);border-radius:20px;padding:48px 44px;color:#fff;position:relative;overflow:hidden;}
.faixa::after{content:"";position:absolute;right:-80px;bottom:-160px;width:380px;height:380px;border-radius:50%;
  background:radial-gradient(circle,rgba(249,188,6,.22),rgba(249,188,6,0) 65%);pointer-events:none;}
.faixa h2{color:#fff;margin-bottom:10px;}
.faixa p{color:var(--claro);max-width:52ch;font-size:18px;position:relative;z-index:1;}
.faixa .acoes{position:relative;z-index:1;}

/* ------------------------------------------------------------ rodapé */
.rodape{background:#06112A;color:#9DB0CE;padding:56px 0 40px;font-size:15px;margin-top:0;}
.rodape a{color:#DCE6F4;text-decoration:none;}
.rodape a:hover{color:#fff;text-decoration:underline;}
.rodape .colunas{display:grid;gap:34px;grid-template-columns:1.3fr 1fr 1fr;}
.rodape .logo{width:129px;margin-bottom:16px;}
.rodape h4{font-family:var(--display);font-weight:700;font-size:13px;letter-spacing:.14em;
           text-transform:uppercase;color:#fff;margin-bottom:14px;}
.rodape ul{list-style:none;display:grid;gap:8px;}
.rodape .legal{margin-top:40px;padding-top:26px;border-top:1px solid #1A2B50;font-size:13.5px;
               line-height:1.65;color:#7F93B5;}
.rodape .legal p + p{margin-top:10px;}
.rodape .legal strong{color:#C6D4EA;font-weight:600;}

/* ------------------------------------------------------------ política */
.politica h2{font-size:22px;margin-top:40px;}
.politica table{width:100%;border-collapse:collapse;margin:14px 0 4px;font-size:15.5px;background:#fff;}
.politica th,.politica td{border:1px solid var(--linha);padding:10px 12px;text-align:left;vertical-align:top;}
.politica th{background:var(--soft);color:var(--escuro);font-weight:600;}
.tabela-rolagem{overflow-x:auto;-webkit-overflow-scrolling:touch;}
.versao{display:inline-block;background:var(--soft);color:var(--brand);font-weight:600;font-size:14px;
        padding:6px 12px;border-radius:99px;margin-bottom:20px;}

/* ------------------------------------------------------------ celular */
@media (max-width:960px){
  .nav{display:none;}
  .capa-grade{grid-template-columns:1fr;}
  .previa{display:none;}
  .menu{display:block;}
  .rodape .colunas{grid-template-columns:1fr 1fr;}
  .rodape .colunas > :first-child{grid-column:1 / -1;}
}
@media (max-width:720px){
  body{font-size:16.5px;}
  .secao{padding:54px 0;}
  .capa{padding:40px 0 58px;}
  .capa.interna{padding:32px 0 44px;}
  .duas{grid-template-columns:1fr;gap:26px;}
  .faixa{padding:36px 24px;border-radius:16px;}
  .acoes .botao{flex:1 1 100%;justify-content:center;}
  .intro{font-size:17px;margin-bottom:28px;}
  .canais{grid-template-columns:1fr;}
}
@media (max-width:480px){
  .rodape .colunas{grid-template-columns:1fr;}
}
@media (prefers-reduced-motion:reduce){
  *{transition:none !important;scroll-behavior:auto !important;}
}
