/* Documentação institucional — usa a paleta e a tipografia do portal. */
.documentos-hero { padding-top: var(--esp-lg); }
.documentos-caminho { display: flex; justify-content: center; flex-wrap: wrap; gap: .6rem; margin-bottom: var(--esp-lg); font-size: .76rem; color: var(--cor-ouro-nobre-alto); }
.documentos-caminho a:hover { text-decoration: underline; }
.documentos-hero h1 em { color: var(--cor-ouro-nobre-alto); font-weight: 500; }
.documentos-hero__atalho { display: inline-flex; align-items: center; gap: 1rem; margin-top: var(--esp-md); font-size: .8rem; color: var(--cor-ouro-nobre-alto); border-bottom: 1px solid rgba(197,168,128,.4); padding-bottom: .5rem; }
.documentos-secao { scroll-margin-top: 6rem; }
.documentos-intro { display: grid; grid-template-columns: 1fr 1fr; gap: var(--esp-xl); align-items: center; margin-bottom: var(--esp-md); }
.documentos-intro h2 { max-width: 18ch; }
.documentos-intro > p { color: #4d5664; font-size: 1rem; line-height: 1.85; }
.documentos-aviso { background: var(--superficie-ouro-hover); border-left: 2px solid var(--cor-ouro-nobre); padding: 1rem 1.25rem; margin-bottom: var(--esp-md); color: #53555a; font-size: .86rem; }
.documentos-aviso strong { color: var(--cor-azul-imperial); }
.documentos-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--esp-sm); }
.documento { min-width: 0; background: var(--cor-branco); border: var(--borda-fina-escura); border-top: 2px solid var(--cor-ouro-nobre); border-radius: var(--raio-sm); }
.documento article { display: flex; flex-direction: column; height: 100%; padding: clamp(1.25rem, 3vw, 2.25rem); }
.documento__topo { display: flex; align-items: center; justify-content: space-between; margin-bottom: var(--esp-sm); }
.documento__numero { font-family: var(--fonte-display); font-size: 2rem; color: #8c6c45; line-height: 1; }
.documento__formato { display: flex; align-items: center; gap: .5rem; font-size: .68rem; letter-spacing: .1em; color: #626977; }
.documento__formato svg { width: 23px; height: 29px; color: var(--cor-ouro-nobre-baixo); }
.documento h3 { font-size: clamp(1.5rem, 2.3vw, 1.9rem); margin-bottom: 1rem; }
.documento__descricao { font-size: .9rem; line-height: 1.8; color: #535b68; margin-bottom: var(--esp-md); }
.documento__publicacao { margin-top: auto; padding-top: var(--esp-sm); border-top: var(--borda-fina-escura); }
.documento__status { font-size: .76rem; color: #626977; margin-bottom: .8rem; }
.documento__acoes { display: flex; flex-wrap: wrap; gap: .6rem; }
.documento__acoes .btn { gap: .8rem; }
.documentos-contato { display: flex; align-items: center; justify-content: space-between; gap: var(--esp-md); border-top: var(--borda-ouro-sutil); margin-top: var(--esp-lg); padding-top: var(--esp-lg); }
.documentos-contato h2 { font-size: 2rem; margin: .5rem 0 .75rem; }
.documentos-contato p { max-width: 58ch; color: #535b68; font-size: .9rem; }
.academia-documentos { background: var(--superficie-ouro-hover); }
.academia-documentos p { max-width: 65ch; margin-bottom: var(--esp-md); }
@media (max-width: 800px) {
  .documentos-intro { grid-template-columns: 1fr; gap: var(--esp-sm); }
  .documentos-intro h2 { max-width: 24ch; }
  .documentos-grid { grid-template-columns: 1fr; }
  .documentos-contato { align-items: flex-start; flex-direction: column; }
}
@media (max-width: 380px) {
  .documento__acoes { flex-direction: column; }
  .documento__acoes .btn { width: 100%; }
  .documentos-contato .btn { white-space: normal; }
}

.documentos-qr { display: grid; grid-template-columns: 200px minmax(0, 1fr); gap: var(--esp-lg); align-items: center; padding: var(--esp-md); margin-top: var(--esp-lg); background: var(--cor-branco); border: var(--borda-ouro-sutil); }
.documentos-qr img { width: 200px; height: 200px; }
.documentos-qr h2 { font-size: 2rem; margin: .5rem 0 .75rem; }
.documentos-qr p { max-width: 65ch; font-size: .9rem; color: #535b68; }
.documentos-qr__endereco { display: inline-block; margin: 1rem 0; text-decoration: underline; overflow-wrap: anywhere; }
@media (max-width: 600px) {
  .documentos-qr { grid-template-columns: minmax(0, 1fr); gap: var(--esp-sm); padding: var(--esp-sm); }
}
