/* ==========================================================
   NÚCLEO DE SAÚDE AMBIENTAL — estilos exclusivos da página
   Arquivo compartilhado: ../css/css-nucleos.css
   ========================================================== */

.nsa-pagina {
  --nsa-azul: #155e75;
  --nsa-azul-escuro: #123c52;
  --nsa-ciano: #dff4f6;
  --nsa-texto: #263746;
  --nsa-texto-suave: #617382;
  --nsa-borda: #e2eaf0;
  --nsa-fundo: #f5f8fb;
  --nsa-branco: #ffffff;
  color: var(--nsa-texto);
  background: var(--nsa-fundo);
  padding: clamp(28px, 4vw, 56px) 18px 64px;
  font-family: inherit;
}

.nsa-pagina,
.nsa-pagina * {
  box-sizing: border-box;
}

.nsa-container {
  width: min(1180px, 100%);
  margin: 0 auto;
}

.nsa-cabecalho {
  position: relative;
  overflow: hidden;
  padding: clamp(28px, 5vw, 48px);
  border: 1px solid #dcebf0;
  border-radius: 22px;
  background:
    radial-gradient(ellipse at 100% 0%, rgba(106, 190, 202, .19), transparent 42%),
    linear-gradient(120deg, #ffffff 0%, #f4fbfc 100%);
  box-shadow: 0 12px 34px rgba(25, 63, 82, .07);
}

.nsa-cabecalho::after {
  content: "";
  position: absolute;
  left: 0;
  top: 22px;
  bottom: 22px;
  width: 5px;
  border-radius: 0 6px 6px 0;
  background: linear-gradient(180deg, #17658a, #65b9c9);
}

.nsa-identificacao {
  max-width: 820px;
}

.nsa-etiqueta,
.nsa-sobretitulo {
  display: inline-block;
  color: var(--nsa-azul);
  font-size: .76rem;
  font-weight: 800;
  letter-spacing: .12em;
  line-height: 1.5;
}

.nsa-titulo {
  margin: 10px 0 8px;
  color: var(--nsa-azul-escuro);
  font-size: clamp(1.8rem, 4vw, 2.65rem);
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: -.035em;
}

.nsa-descricao {
  margin: 0;
  color: var(--nsa-texto-suave);
  font-size: clamp(.98rem, 2vw, 1.1rem);
  line-height: 1.7;
}

.nsa-contato {
  display: flex;
  align-items: center;
  gap: 18px;
  margin: 22px 0 34px;
  padding: 22px 26px;
  border: 1px solid var(--nsa-borda);
  border-radius: 16px;
  background: var(--nsa-branco);
  box-shadow: 0 8px 24px rgba(25, 63, 82, .045);
}

.nsa-contato-icone {
  display: grid;
  flex: 0 0 48px;
  width: 48px;
  height: 48px;
  place-items: center;
  border-radius: 14px;
  background: var(--nsa-ciano);
  color: var(--nsa-azul);
  font-size: 1.4rem;
}

.nsa-contato-conteudo {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
}

.nsa-contato-rotulo {
  color: var(--nsa-texto-suave);
  font-size: .82rem;
}

.nsa-contato-nome {
  color: var(--nsa-azul-escuro);
  font-size: 1.02rem;
  line-height: 1.5;
}

.nsa-contato-telefone {
  color: var(--nsa-azul);
  font-size: .93rem;
  font-weight: 700;
  text-decoration: none;
}

.nsa-contato-telefone:hover {
  text-decoration: underline;
}

.nsa-legislacao {
  overflow: hidden;
  border: 1px solid var(--nsa-borda);
  border-radius: 20px;
  background: var(--nsa-branco);
  box-shadow: 0 12px 34px rgba(25, 63, 82, .055);
}

.nsa-secao-cabecalho {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  padding: 30px 30px 26px;
  border-bottom: 1px solid var(--nsa-borda);
}

.nsa-titulo-secao {
  margin: 6px 0 8px;
  color: var(--nsa-azul-escuro);
  font-size: clamp(1.5rem, 3vw, 2rem);
  font-weight: 800;
  line-height: 1.2;
}

.nsa-texto-secao {
  max-width: 720px;
  margin: 0;
  color: var(--nsa-texto-suave);
  font-size: .96rem;
  line-height: 1.7;
}

.nsa-total-documentos {
  flex-shrink: 0;
  margin-bottom: 3px;
  padding: 8px 12px;
  border: 1px solid #d8edf0;
  border-radius: 999px;
  background: #f1fbfc;
  color: var(--nsa-azul);
  font-size: .76rem;
  font-weight: 800;
}

.nsa-tabela-rolagem {
  width: 100%;
  overflow-x: auto;
  overscroll-behavior-x: contain;
  scrollbar-color: #b7ccd5 #f2f6f8;
}

.nsa-tabela {
  width: 100%;
  min-width: 760px;
  border: 0;
  border-collapse: separate;
  border-spacing: 0;
  color: var(--nsa-texto);
  font-size: .92rem;
  line-height: 1.65;
}

.nsa-tabela thead th {
  padding: 16px 22px;
  background: #edf5f8;
  color: #23485a;
  font-size: .76rem;
  font-weight: 800;
  letter-spacing: .055em;
  text-align: left;
  text-transform: uppercase;
  border-bottom: 1px solid #dce8ed;
}

.nsa-tabela thead th:first-child {
  width: 30%;
}

.nsa-tabela thead th:nth-child(2) {
  width: 55%;
}

.nsa-tabela thead th.nsa-coluna-documento {
  width: 15%;
  text-align: center;
}

.nsa-tabela tbody td {
  padding: 18px 22px;
  vertical-align: top;
  border-bottom: 1px solid #edf1f4;
  background: #fff;
  overflow-wrap: anywhere;
}

.nsa-tabela tbody tr:nth-child(even) td {
  background: #fbfdfe;
}

.nsa-tabela tbody tr {
  transition: background-color .18s ease;
}

.nsa-tabela tbody tr:hover td {
  background: #f0f9fb;
}

.nsa-tabela tbody tr:last-child td {
  border-bottom: 0;
}

.nsa-tabela tbody td:first-child {
  color: #23485a;
  font-weight: 750;
}

.nsa-tabela tbody td:last-child {
  text-align: center;
  vertical-align: middle;
}

.nsa-link-documento {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: 36px;
  padding: 8px 13px;
  border: 1px solid #c6e3e9;
  border-radius: 9px;
  background: #f2fbfc;
  color: #145c73;
  font-size: .83rem;
  font-weight: 800;
  line-height: 1.2;
  text-decoration: none;
  white-space: nowrap;
  transition: background-color .18s ease, border-color .18s ease, transform .18s ease;
}

.nsa-link-documento::before {
  content: "↗";
  font-size: 1rem;
}

.nsa-link-documento:hover {
  transform: translateY(-1px);
  border-color: #83c5d1;
  background: #dff4f6;
  color: #103f54;
}

.nsa-link-documento:focus-visible,
.nsa-contato-telefone:focus-visible {
  outline: 3px solid #83c5d1;
  outline-offset: 3px;
}

.nsa-nota-tabela {
  margin: 0;
  padding: 13px 22px 17px;
  border-top: 1px solid var(--nsa-borda);
  background: #fbfdfe;
  color: var(--nsa-texto-suave);
  font-size: .8rem;
  line-height: 1.6;
}

@media (max-width: 700px) {
  .nsa-pagina {
    padding: 22px 12px 40px;
  }

  .nsa-cabecalho {
    padding: 28px 22px 28px 26px;
    border-radius: 16px;
  }

  .nsa-cabecalho::after {
    top: 18px;
    bottom: 18px;
  }

  .nsa-contato {
    align-items: flex-start;
    gap: 13px;
    margin: 16px 0 24px;
    padding: 18px;
    border-radius: 14px;
  }

  .nsa-contato-icone {
    flex-basis: 42px;
    width: 42px;
    height: 42px;
  }

  .nsa-contato-nome {
    font-size: .94rem;
  }

  .nsa-secao-cabecalho {
    align-items: flex-start;
    flex-direction: column;
    gap: 14px;
    padding: 24px 20px 20px;
  }

  .nsa-total-documentos {
    margin: 0;
  }

  .nsa-tabela {
    font-size: .87rem;
  }

  .nsa-tabela thead th,
  .nsa-tabela tbody td {
    padding: 15px 16px;
  }

  .nsa-nota-tabela {
    padding: 12px 16px 15px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .nsa-tabela tbody tr,
  .nsa-link-documento {
    transition: none;
  }
}


/* ==========================================================
   NÚCLEO DE CONTROLE DE ALIMENTOS — estilos integrados
   Classes próprias (.nca-), sem conflito com .nsa-
   ========================================================== */

.nca-pagina {
  --nca-azul: #155e75;
  --nca-azul-escuro: #123c52;
  --nca-ciano: #dff4f6;
  --nca-texto: #263746;
  --nca-texto-suave: #617382;
  --nca-borda: #e2eaf0;
  --nca-fundo: #f5f8fb;
  --nca-branco: #ffffff;
  color: var(--nca-texto);
  background: var(--nca-fundo);
  padding: clamp(28px, 4vw, 56px) 18px 64px;
  font-family: inherit;
}

.nca-pagina,
.nca-pagina * {
  box-sizing: border-box;
}

.nca-container {
  width: min(1180px, 100%);
  margin: 0 auto;
}

.nca-cabecalho {
  position: relative;
  overflow: hidden;
  padding: clamp(28px, 5vw, 48px);
  border: 1px solid #dcebf0;
  border-radius: 22px;
  background:
    radial-gradient(ellipse at 100% 0%, rgba(106, 190, 202, .19), transparent 42%),
    linear-gradient(120deg, #ffffff 0%, #f4fbfc 100%);
  box-shadow: 0 12px 34px rgba(25, 63, 82, .07);
}

.nca-cabecalho::after {
  content: "";
  position: absolute;
  left: 0;
  top: 22px;
  bottom: 22px;
  width: 5px;
  border-radius: 0 6px 6px 0;
  background: linear-gradient(180deg, #17658a, #65b9c9);
}

.nca-identificacao {
  max-width: 850px;
}

.nca-etiqueta{
display:inline-flex;align-items:center;gap:8px;
color:var(--nca-azul);font-size:.74rem;font-weight:800;
letter-spacing:.13em;text-transform:uppercase}

.nca-etiqueta:before{content:"";width:22px;height:3px;border-radius:3px;background:#43a6b8}

.nca-sobretitulo {
  display: inline-block;
  color: var(--nca-azul);
  font-size: .76rem;
  font-weight: 800;
  letter-spacing: .12em;
  line-height: 1.5;
}

.nca-titulo {
  margin: 10px 0 8px;
  color: var(--nca-azul-escuro);
  font-size: clamp(1.8rem, 4vw, 2.65rem);
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: -.035em;
}

.nca-descricao {
  margin: 0;
  color: var(--nca-texto-suave);
  font-size: clamp(.98rem, 2vw, 1.1rem);
  line-height: 1.7;
}

.nca-contato {
  display: flex;
  align-items: center;
  gap: 18px;
  margin: 22px 0 24px;
  padding: 22px 26px;
  border: 1px solid var(--nca-borda);
  border-radius: 16px;
  background: var(--nca-branco);
  box-shadow: 0 8px 24px rgba(25, 63, 82, .045);
}

.nca-contato-icone {
  display: grid;
  flex: 0 0 48px;
  width: 48px;
  height: 48px;
  place-items: center;
  border-radius: 14px;
  background: var(--nca-ciano);
  color: var(--nca-azul);
  font-size: 1.4rem;
}

.nca-contato-conteudo {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
}

.nca-contato-rotulo {
  color: var(--nca-texto-suave);
  font-size: .82rem;
}

.nca-contato-nome {
  color: var(--nca-azul-escuro);
  font-size: 1.02rem;
  line-height: 1.5;
}

.nca-contato-telefone {
  color: var(--nca-azul);
  font-size: .93rem;
  font-weight: 700;
  text-decoration: none;
}

.nca-contato-telefone:hover {
  text-decoration: underline;
}

.nca-navegacao {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 9px;
  margin: 0 0 28px;
  padding: 16px 18px;
  border: 1px solid var(--nca-borda);
  border-radius: 14px;
  background: #fff;
}

.nca-navegacao-label {
  margin-right: 4px;
  color: var(--nca-texto-suave);
  font-size: .82rem;
  font-weight: 800;
}

.nca-navegacao a {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 7px 11px;
  border: 1px solid #d8e8ed;
  border-radius: 8px;
  background: #f7fbfc;
  color: var(--nca-azul);
  font-size: .82rem;
  font-weight: 750;
  text-decoration: none;
  transition: background-color .18s ease, border-color .18s ease;
}

.nca-navegacao a:hover {
  border-color: #83c5d1;
  background: #e7f7f9;
}

.nca-navegacao a:focus-visible,
.nca-link-documento:focus-visible,
.nca-contato-telefone:focus-visible {
  outline: 3px solid #83c5d1;
  outline-offset: 3px;
}

.nca-lista-secoes {
  display: grid;
  gap: 26px;
}

.nca-secao {
  overflow: hidden;
  border: 1px solid var(--nca-borda);
  border-radius: 20px;
  background: var(--nca-branco);
  box-shadow: 0 12px 34px rgba(25, 63, 82, .055);
  scroll-margin-top: 24px;
}

.nca-secao-cabecalho {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  padding: 27px 30px 22px;
  border-bottom: 1px solid var(--nca-borda);
}

.nca-titulo-secao {
  margin: 6px 0 0;
  color: var(--nca-azul-escuro);
  font-size: clamp(1.45rem, 3vw, 1.9rem);
  font-weight: 800;
  line-height: 1.2;
}

.nca-tabela-rolagem {
  width: 100%;
  overflow-x: auto;
  overscroll-behavior-x: contain;
  scrollbar-color: #b7ccd5 #f2f6f8;
}

.nca-tabela {
  width: 100%;
  min-width: 760px;
  border: 0;
  border-collapse: separate;
  border-spacing: 0;
  color: var(--nca-texto);
  font-size: .92rem;
  line-height: 1.65;
}

.nca-tabela thead th {
  padding: 16px 22px;
  background: #edf5f8;
  color: #23485a;
  font-size: .76rem;
  font-weight: 800;
  letter-spacing: .055em;
  text-align: left;
  text-transform: uppercase;
  border-bottom: 1px solid #dce8ed;
}

.nca-tabela thead th:first-child {
  width: 30%;
}

.nca-tabela thead th:nth-child(2) {
  width: 55%;
}

.nca-tabela thead th:last-child {
  width: 15%;
  text-align: center;
}

.nca-tabela tbody td {
  padding: 17px 22px;
  vertical-align: top;
  border-bottom: 1px solid #edf1f4;
  background: #fff;
  overflow-wrap: anywhere;
}

.nca-tabela tbody tr:nth-child(even) td {
  background: #fbfdfe;
}

.nca-tabela tbody tr:hover td {
  background: #f0f9fb;
}

.nca-tabela tbody tr:last-child td {
  border-bottom: 0;
}

.nca-tabela tbody td:first-child {
  color: #23485a;
  font-weight: 750;
}

.nca-tabela tbody td:last-child {
  text-align: center;
  vertical-align: middle;
}

.nca-link-documento {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: 36px;
  padding: 8px 13px;
  border: 1px solid #c6e3e9;
  border-radius: 9px;
  background: #f2fbfc;
  color: #145c73;
  font-size: .83rem;
  font-weight: 800;
  line-height: 1.2;
  text-decoration: none;
  white-space: nowrap;
  transition: background-color .18s ease, border-color .18s ease, transform .18s ease;
}

.nca-link-documento::before {
  content: "↗";
  font-size: 1rem;
}

.nca-link-documento:hover {
  transform: translateY(-1px);
  border-color: #83c5d1;
  background: #dff4f6;
  color: #103f54;
}

.nca-nota-tabela {
  margin: 0;
  padding: 13px 22px 17px;
  border-top: 1px solid var(--nca-borda);
  background: #fbfdfe;
  color: var(--nca-texto-suave);
  font-size: .8rem;
  line-height: 1.6;
}

.nca-livro-conteudo {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 24px 30px 28px;
}

.nca-livro-icone {
  display: grid;
  flex: 0 0 48px;
  width: 48px;
  height: 48px;
  place-items: center;
  border-radius: 14px;
  background: var(--nca-ciano);
  color: var(--nca-azul);
  font-size: 1.5rem;
}

.nca-livro-texto {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  color: var(--nca-azul-escuro);
  line-height: 1.55;
}

@media (max-width: 700px) {
  .nca-pagina {
    padding: 22px 12px 40px;
  }

  .nca-cabecalho {
    padding: 28px 22px 28px 26px;
    border-radius: 16px;
  }

  .nca-cabecalho::after {
    top: 18px;
    bottom: 18px;
  }

  .nca-contato {
    align-items: flex-start;
    gap: 13px;
    margin: 16px 0 20px;
    padding: 18px;
    border-radius: 14px;
  }

  .nca-contato-icone {
    flex-basis: 42px;
    width: 42px;
    height: 42px;
  }

  .nca-contato-nome {
    font-size: .94rem;
  }

  .nca-navegacao {
    align-items: flex-start;
    gap: 8px;
    padding: 14px;
  }

  .nca-navegacao-label {
    flex-basis: 100%;
  }

  .nca-navegacao a {
    font-size: .78rem;
  }

  .nca-secao-cabecalho {
    padding: 23px 20px 19px;
  }

  .nca-tabela {
    font-size: .87rem;
  }

  .nca-tabela thead th,
  .nca-tabela tbody td {
    padding: 14px 16px;
  }

  .nca-nota-tabela {
    padding: 12px 16px 15px;
  }

  .nca-livro-conteudo {
    align-items: flex-start;
    padding: 20px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .nca-navegacao a,
  .nca-tabela tbody tr,
  .nca-link-documento {
    transition: none;
  }
}


/* ==========================================================
   NÚCLEO DE CONTROLE DE MEDICAMENTOS E PRODUTOS
   Estilos adicionais no CSS compartilhado: css-nucleos.css
   ========================================================== */

.ncm-pagina {
  --ncm-azul: #155e75;
  --ncm-azul-escuro: #123c52;
  --ncm-ciano: #dff4f6;
  --ncm-texto: #263746;
  --ncm-texto-suave: #617382;
  --ncm-borda: #e2eaf0;
  --ncm-fundo: #f5f8fb;
  --ncm-branco: #ffffff;
  color: var(--ncm-texto);
  background: var(--ncm-fundo);
  padding: clamp(28px, 4vw, 56px) 18px 64px;
  font-family: inherit;
}

.ncm-pagina,
.ncm-pagina * {
  box-sizing: border-box;
}

.ncm-container {
  width: min(1180px, 100%);
  margin: 0 auto;
}

.ncm-cabecalho {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
  overflow: hidden;
  padding: clamp(28px, 5vw, 48px);
  border: 1px solid #dcebf0;
  border-radius: 22px;
  background:
    radial-gradient(ellipse at 100% 0%, rgba(106, 190, 202, .2), transparent 42%),
    linear-gradient(120deg, #fff 0%, #f4fbfc 100%);
  box-shadow: 0 12px 34px rgba(25, 63, 82, .07);
}

.ncm-cabecalho::after {
  content: "";
  position: absolute;
  left: 0;
  top: 22px;
  bottom: 22px;
  width: 5px;
  border-radius: 0 6px 6px 0;
  background: linear-gradient(180deg, #17658a, #65b9c9);
}

.ncm-identificacao {
  max-width: 850px;
}

.ncm-etiqueta,
.ncm-sobretitulo {
  display: inline-block;
  color: var(--ncm-azul);
  font-size: .76rem;
  font-weight: 800;
  letter-spacing: .12em;
  line-height: 1.5;
}

.ncm-titulo {
  margin: 10px 0 8px;
  color: var(--ncm-azul-escuro);
  font-size: clamp(1.8rem, 4vw, 2.65rem);
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: -.035em;
}

.ncm-descricao {
  max-width: 780px;
  margin: 0;
  color: var(--ncm-texto-suave);
  font-size: clamp(.98rem, 2vw, 1.1rem);
  line-height: 1.7;
}

.ncm-selo {
  display: flex;
  flex: 0 0 116px;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 116px;
  min-height: 116px;
  border: 1px solid #d8edf0;
  border-radius: 24px;
  background: rgba(255, 255, 255, .78);
  color: var(--ncm-azul);
  font-size: .65rem;
  font-weight: 800;
  letter-spacing: .08em;
  line-height: 1.45;
  text-align: center;
}

.ncm-selo-icone {
  display: grid;
  width: 48px;
  height: 48px;
  place-items: center;
  border-radius: 15px;
  background: var(--ncm-ciano);
  color: var(--ncm-azul);
  font-size: 1.8rem;
}

.ncm-contato {
  display: flex;
  align-items: center;
  gap: 18px;
  margin: 22px 0;
  padding: 22px 26px;
  border: 1px solid var(--ncm-borda);
  border-radius: 16px;
  background: var(--ncm-branco);
  box-shadow: 0 8px 24px rgba(25, 63, 82, .045);
}

.ncm-contato-icone,
.ncm-orientacao-icone {
  display: grid;
  flex: 0 0 48px;
  width: 48px;
  height: 48px;
  place-items: center;
  border-radius: 14px;
  background: var(--ncm-ciano);
  color: var(--ncm-azul);
  font-size: 1.4rem;
}

.ncm-contato-conteudo {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
}

.ncm-contato-rotulo {
  color: var(--ncm-texto-suave);
  font-size: .82rem;
}

.ncm-contato-nome {
  color: var(--ncm-azul-escuro);
  font-size: 1.02rem;
  line-height: 1.5;
}

.ncm-contato-telefone {
  color: var(--ncm-azul);
  font-size: .93rem;
  font-weight: 700;
  text-decoration: none;
}

.ncm-contato-telefone:hover {
  text-decoration: underline;
}

.ncm-orientacao {
  display: flex;
  align-items: flex-start;
  gap: 18px;
  margin: 0 0 34px;
  padding: 24px 26px;
  border: 1px solid #d6e9ee;
  border-radius: 18px;
  background: linear-gradient(120deg, #f0fafb 0%, #fff 78%);
  box-shadow: 0 8px 24px rgba(25, 63, 82, .04);
}

.ncm-orientacao-conteudo {
  min-width: 0;
}

.ncm-orientacao h2 {
  margin: 6px 0 7px;
  color: var(--ncm-azul-escuro);
  font-size: 1.25rem;
  font-weight: 800;
  line-height: 1.3;
}

.ncm-orientacao p {
  margin: 0 0 14px;
  color: var(--ncm-texto-suave);
  font-size: .95rem;
  line-height: 1.65;
}

.ncm-link-destaque {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-height: 40px;
  padding: 10px 15px;
  border: 1px solid #c6e3e9;
  border-radius: 10px;
  background: #fff;
  color: #145c73;
  font-size: .86rem;
  font-weight: 800;
  text-decoration: none;
  transition: background-color .18s ease, border-color .18s ease, transform .18s ease;
}

.ncm-link-destaque:hover {
  transform: translateY(-1px);
  border-color: #83c5d1;
  background: #dff4f6;
  color: #103f54;
}

.ncm-legislacao {
  overflow: hidden;
  border: 1px solid var(--ncm-borda);
  border-radius: 20px;
  background: var(--ncm-branco);
  box-shadow: 0 12px 34px rgba(25, 63, 82, .055);
}

.ncm-secao-cabecalho {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  padding: 30px 30px 26px;
  border-bottom: 1px solid var(--ncm-borda);
}

.ncm-titulo-secao {
  margin: 6px 0 8px;
  color: var(--ncm-azul-escuro);
  font-size: clamp(1.5rem, 3vw, 2rem);
  font-weight: 800;
  line-height: 1.2;
}

.ncm-texto-secao {
  max-width: 720px;
  margin: 0;
  color: var(--ncm-texto-suave);
  font-size: .96rem;
  line-height: 1.7;
}

.ncm-total-documentos {
  flex-shrink: 0;
  margin-bottom: 3px;
  padding: 8px 12px;
  border: 1px solid #d8edf0;
  border-radius: 999px;
  background: #f1fbfc;
  color: var(--ncm-azul);
  font-size: .76rem;
  font-weight: 800;
  white-space: nowrap;
}

.ncm-tabela-rolagem {
  width: 100%;
  overflow-x: auto;
  overscroll-behavior-x: contain;
  scrollbar-color: #b7ccd5 #f2f6f8;
}

.ncm-tabela {
  width: 100%;
  min-width: 760px;
  border: 0;
  border-collapse: separate;
  border-spacing: 0;
  color: var(--ncm-texto);
  font-size: .92rem;
  line-height: 1.65;
}

.ncm-tabela thead th {
  padding: 16px 22px;
  background: #edf5f8;
  color: #23485a;
  font-size: .76rem;
  font-weight: 800;
  letter-spacing: .055em;
  text-align: left;
  text-transform: uppercase;
  border-bottom: 1px solid #dce8ed;
}

.ncm-tabela thead th:first-child {
  width: 25%;
}

.ncm-tabela thead th:nth-child(2) {
  width: 58%;
}

.ncm-tabela thead th.ncm-coluna-documento {
  width: 17%;
  text-align: center;
}

.ncm-tabela tbody td {
  padding: 17px 22px;
  vertical-align: top;
  border-bottom: 1px solid #edf1f4;
  background: #fff;
  overflow-wrap: anywhere;
}

.ncm-tabela tbody tr:nth-child(even) td {
  background: #fbfdfe;
}

.ncm-tabela tbody tr {
  transition: background-color .18s ease;
}

.ncm-tabela tbody tr:hover td {
  background: #f0f9fb;
}

.ncm-tabela tbody tr:last-child td {
  border-bottom: 0;
}

.ncm-tabela tbody td:first-child {
  color: #23485a;
  font-weight: 750;
}

.ncm-tabela tbody td:last-child {
  text-align: center;
  vertical-align: middle;
}

.ncm-link-documento {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: 36px;
  padding: 8px 13px;
  border: 1px solid #c6e3e9;
  border-radius: 9px;
  background: #f2fbfc;
  color: #145c73;
  font-size: .83rem;
  font-weight: 800;
  line-height: 1.2;
  text-decoration: none;
  white-space: nowrap;
  transition: background-color .18s ease, border-color .18s ease, transform .18s ease;
}

.ncm-link-documento::before {
  content: "↗";
  font-size: 1rem;
}

.ncm-link-documento:hover {
  transform: translateY(-1px);
  border-color: #83c5d1;
  background: #dff4f6;
  color: #103f54;
}

.ncm-link-documento:focus-visible,
.ncm-link-destaque:focus-visible,
.ncm-contato-telefone:focus-visible {
  outline: 3px solid #83c5d1;
  outline-offset: 3px;
}

.ncm-nota-tabela {
  margin: 0;
  padding: 13px 22px 17px;
  border-top: 1px solid var(--ncm-borda);
  background: #fbfdfe;
  color: var(--ncm-texto-suave);
  font-size: .8rem;
  line-height: 1.6;
}

@media (max-width: 700px) {
  .ncm-pagina {
    padding: 22px 12px 40px;
  }

  .ncm-cabecalho {
    align-items: flex-start;
    padding: 28px 22px 28px 26px;
    border-radius: 16px;
  }

  .ncm-cabecalho::after {
    top: 18px;
    bottom: 18px;
  }

  .ncm-selo {
    display: none;
  }

  .ncm-contato {
    align-items: flex-start;
    gap: 13px;
    margin: 16px 0;
    padding: 18px;
    border-radius: 14px;
  }

  .ncm-contato-icone,
  .ncm-orientacao-icone {
    flex-basis: 42px;
    width: 42px;
    height: 42px;
  }

  .ncm-contato-nome {
    font-size: .94rem;
  }

  .ncm-orientacao {
    gap: 13px;
    margin-bottom: 24px;
    padding: 19px;
    border-radius: 14px;
  }

  .ncm-secao-cabecalho {
    align-items: flex-start;
    flex-direction: column;
    gap: 14px;
    padding: 24px 20px 20px;
  }

  .ncm-total-documentos {
    margin: 0;
  }

  .ncm-tabela {
    font-size: .87rem;
  }

  .ncm-tabela thead th,
  .ncm-tabela tbody td {
    padding: 14px 16px;
  }

  .ncm-nota-tabela {
    padding: 12px 16px 15px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .ncm-tabela tbody tr,
  .ncm-link-documento,
  .ncm-link-destaque {
    transition: none;
  }
}


/* ==========================================================
   NÚCLEO DE SERVIÇOS DE SAÚDE — estilos exclusivos da página
   Mantidos neste arquivo compartilhado: css-nucleos.css
   ========================================================== */
.nss-pagina{--nss-azul:#155e75;--nss-azul-escuro:#123c52;--nss-ciano:#dff4f6;--nss-texto:#263746;--nss-suave:#617382;--nss-borda:#e2eaf0;--nss-fundo:#f5f8fb;--nss-branco:#fff;color:var(--nss-texto);background:var(--nss-fundo);padding:clamp(28px,4vw,56px) 18px 64px;font-family:inherit}
.nss-pagina,.nss-pagina *{box-sizing:border-box}
.nss-container{width:min(1180px,100%);margin:0 auto}
.nss-cabecalho{position:relative;display:flex;align-items:center;justify-content:space-between;gap:28px;overflow:hidden;padding:clamp(28px,5vw,54px);border:1px solid #dceaf0;border-radius:24px;background:linear-gradient(120deg,#fff 0%,#f7fcfd 62%,#e8f6f8 100%);box-shadow:0 14px 38px rgba(20,66,88,.07)}
.nss-cabecalho:after{content:"";position:absolute;width:260px;height:260px;right:110px;top:-160px;border:1px solid rgba(21,94,117,.12);border-radius:50%;box-shadow:0 0 0 28px rgba(21,94,117,.025),0 0 0 58px rgba(21,94,117,.02);pointer-events:none}
.nss-identificacao{position:relative;z-index:1;max-width:820px}
.nss-etiqueta,.nss-sobretitulo{display:inline-flex;align-items:center;gap:8px;color:var(--nss-azul);font-size:.74rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.nss-etiqueta:before{content:"";width:22px;height:3px;border-radius:3px;background:#43a6b8}
.nss-titulo{margin:13px 0 12px;color:var(--nss-azul-escuro);font-size:clamp(1.85rem,4vw,3rem);font-weight:800;line-height:1.12;letter-spacing:-.035em}
.nss-descricao{max-width:700px;margin:0;color:#526978;font-size:1.02rem;line-height:1.75}
.nss-selo{position:relative;z-index:1;flex:0 0 122px;width:122px;height:122px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;border:1px solid #c9e7ec;border-radius:28px;background:rgba(255,255,255,.82);color:var(--nss-azul);font-size:.68rem;font-weight:800;letter-spacing:.08em;text-align:center;box-shadow:0 10px 25px rgba(21,94,117,.07)}
.nss-selo-icone{font-size:2.35rem;line-height:1}
.nss-contato{display:flex;align-items:center;gap:17px;margin:22px 0 34px;padding:22px 25px;border:1px solid var(--nss-borda);border-radius:18px;background:#fff;box-shadow:0 8px 24px rgba(27,62,82,.045)}
.nss-contato-icone{display:flex;align-items:center;justify-content:center;flex:0 0 48px;width:48px;height:48px;border-radius:15px;background:#e8f6f8;color:var(--nss-azul);font-size:1.4rem}
.nss-contato-conteudo{display:flex;flex-direction:column;gap:4px;min-width:0}
.nss-contato-rotulo{color:var(--nss-suave);font-size:.76rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase}
.nss-contato-nome{color:var(--nss-azul-escuro);font-size:1.03rem}
.nss-contato-telefone{color:#536a79;font-size:.92rem}
.nss-contato-telefone a{color:var(--nss-azul);font-weight:800;text-decoration:none}
.nss-contato-telefone a:hover{text-decoration:underline}
.nss-contato-tag{margin-left:auto;padding:9px 13px;border-radius:999px;background:#f0f8fa;color:#376778;font-size:.76rem;font-weight:700;white-space:nowrap}
.nss-legislacao{padding:clamp(20px,3vw,34px);border:1px solid var(--nss-borda);border-radius:24px;background:#fff;box-shadow:0 12px 34px rgba(27,62,82,.055)}
.nss-secao-cabecalho{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:23px}
.nss-secao-titulo{margin:7px 0 6px;color:var(--nss-azul-escuro);font-size:clamp(1.55rem,3vw,2.05rem);font-weight:800;letter-spacing:-.025em}
.nss-secao-descricao{margin:0;color:var(--nss-suave);font-size:.94rem;line-height:1.6}
.nss-contador{flex-shrink:0;padding:8px 12px;border:1px solid #d8ebef;border-radius:999px;background:#f2fafb;color:var(--nss-azul);font-size:.78rem;font-weight:800}
.nss-tabela-rolagem{width:100%;overflow-x:auto;border:1px solid #e4edf1;border-radius:14px}
.nss-tabela{width:100%;min-width:760px;border-collapse:separate;border-spacing:0;color:#344b59;font-size:.9rem;line-height:1.6}
.nss-tabela thead th{padding:16px 18px;background:#edf7f9;color:#174e62;font-size:.74rem;font-weight:800;letter-spacing:.07em;text-align:left;text-transform:uppercase;border-bottom:1px solid #dcebf0}
.nss-tabela thead th:first-child{width:24%}.nss-tabela thead th:last-child{width:145px;text-align:center}
.nss-tabela tbody td{padding:15px 18px;vertical-align:top;border-bottom:1px solid #edf1f4}
.nss-tabela tbody tr:last-child td{border-bottom:0}
.nss-tabela tbody tr:nth-child(even){background:#fbfdfe}
.nss-tabela tbody tr:hover{background:#f1fafb}
.nss-tabela tbody td:first-child{color:#244c60;font-weight:750}
.nss-tabela tbody td:last-child{text-align:center;vertical-align:middle}
.nss-link-documento{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:94px;padding:8px 12px;border:1px solid #cde6eb;border-radius:10px;background:#f1fafb;color:#17647a;font-size:.8rem;font-weight:800;text-decoration:none;white-space:nowrap;transition:background .18s ease,border-color .18s ease,transform .18s ease}
.nss-link-documento:hover{transform:translateY(-1px);border-color:#8ecbd5;background:#e2f5f7}
.nss-nota{margin:17px 0 0;color:#71818d;font-size:.8rem;line-height:1.6}
@media(max-width:720px){.nss-pagina{padding:24px 12px 42px}.nss-cabecalho{align-items:flex-start;padding:25px 21px;border-radius:19px}.nss-selo{flex-basis:74px;width:74px;height:74px;border-radius:19px;font-size:.54rem}.nss-selo-icone{font-size:1.7rem}.nss-cabecalho:after{right:-90px}.nss-contato{align-items:flex-start;padding:18px;gap:12px}.nss-contato-icone{flex-basis:42px;width:42px;height:42px}.nss-contato-tag{display:none}.nss-legislacao{padding:18px 13px;border-radius:19px}.nss-secao-cabecalho{align-items:flex-start;flex-direction:column;gap:12px}.nss-tabela{font-size:.84rem}.nss-tabela tbody td{padding:13px 12px}}
@media(max-width:430px){.nss-cabecalho{display:block}.nss-selo{display:none}.nss-titulo{font-size:1.8rem}.nss-contato-nome{font-size:.94rem}}


/* ==========================================================
   NÚCLEO DE VIGILÂNCIA EM SAÚDE DO TRABALHADOR — estilos exclusivos
   Mantidos no arquivo compartilhado css-nucleos.css
   ========================================================== */
.nvt-pagina{--nvt-azul:#155e75;--nvt-azul-escuro:#123c52;--nvt-ciano:#dff4f6;--nvt-texto:#263746;--nvt-suave:#617382;--nvt-borda:#e2eaf0;--nvt-fundo:#f5f8fb;--nvt-branco:#fff;color:var(--nvt-texto);background:var(--nvt-fundo);padding:clamp(28px,4vw,56px) 18px 64px;font-family:inherit}
.nvt-pagina,.nvt-pagina *{box-sizing:border-box}
.nvt-container{width:min(1180px,100%);margin:0 auto}
.nvt-cabecalho{position:relative;display:flex;align-items:center;justify-content:space-between;gap:28px;overflow:hidden;padding:clamp(28px,5vw,54px);border:1px solid #dceaf0;border-radius:24px;background:linear-gradient(120deg,#fff 0%,#f7fcfd 62%,#e8f6f8 100%);box-shadow:0 14px 38px rgba(20,66,88,.07)}
.nvt-cabecalho:after{content:"";position:absolute;width:260px;height:260px;right:110px;top:-160px;border:1px solid rgba(21,94,117,.12);border-radius:50%;box-shadow:0 0 0 28px rgba(21,94,117,.025),0 0 0 58px rgba(21,94,117,.02);pointer-events:none}
.nvt-identificacao{position:relative;z-index:1;max-width:820px}
.nvt-etiqueta,.nvt-sobretitulo{display:inline-flex;align-items:center;gap:8px;color:var(--nvt-azul);font-size:.74rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.nvt-etiqueta:before{content:"";width:22px;height:3px;border-radius:3px;background:#43a6b8}
.nvt-titulo{margin:13px 0 12px;color:var(--nvt-azul-escuro);font-size:clamp(1.85rem,4vw,3rem);font-weight:800;line-height:1.12;letter-spacing:-.035em}
.nvt-descricao{max-width:700px;margin:0;color:#526978;font-size:1.02rem;line-height:1.75}
.nvt-selo{position:relative;z-index:1;flex:0 0 122px;width:122px;height:122px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;border:1px solid #c9e7ec;border-radius:28px;background:rgba(255,255,255,.82);color:var(--nvt-azul);font-size:.68rem;font-weight:800;letter-spacing:.08em;text-align:center;box-shadow:0 10px 25px rgba(21,94,117,.07)}
.nvt-selo-icone{font-size:2.35rem;line-height:1}
.nvt-contato{display:flex;align-items:center;gap:17px;margin:22px 0 34px;padding:22px 25px;border:1px solid var(--nvt-borda);border-radius:18px;background:#fff;box-shadow:0 8px 24px rgba(27,62,82,.045)}
.nvt-contato-icone{display:flex;align-items:center;justify-content:center;flex:0 0 48px;width:48px;height:48px;border-radius:15px;background:#e8f6f8;color:var(--nvt-azul);font-size:1.4rem}
.nvt-contato-conteudo{display:flex;flex-direction:column;gap:4px;min-width:0}
.nvt-contato-rotulo{color:var(--nvt-suave);font-size:.76rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase}
.nvt-contato-nome{color:var(--nvt-azul-escuro);font-size:1.03rem}
.nvt-contato-telefone{color:#536a79;font-size:.92rem}
.nvt-contato-telefone a{color:var(--nvt-azul);font-weight:800;text-decoration:none}
.nvt-contato-telefone a:hover{text-decoration:underline}
.nvt-contato-tag{margin-left:auto;padding:9px 13px;border-radius:999px;background:#f0f8fa;color:#376778;font-size:.76rem;font-weight:700;white-space:nowrap}
.nvt-legislacao{padding:clamp(20px,3vw,34px);border:1px solid var(--nvt-borda);border-radius:24px;background:#fff;box-shadow:0 12px 34px rgba(27,62,82,.055)}
.nvt-secao-cabecalho{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:23px}
.nvt-secao-titulo{margin:7px 0 6px;color:var(--nvt-azul-escuro);font-size:clamp(1.55rem,3vw,2.05rem);font-weight:800;letter-spacing:-.025em}
.nvt-secao-descricao{margin:0;color:var(--nvt-suave);font-size:.94rem;line-height:1.6}
.nvt-contador{flex-shrink:0;padding:8px 12px;border:1px solid #d8ebef;border-radius:999px;background:#f2fafb;color:var(--nvt-azul);font-size:.78rem;font-weight:800}
.nvt-tabela-rolagem{width:100%;overflow-x:auto;border:1px solid #e4edf1;border-radius:14px}
.nvt-tabela{width:100%;min-width:760px;border-collapse:separate;border-spacing:0;color:#344b59;font-size:.9rem;line-height:1.6}
.nvt-tabela thead th{padding:16px 18px;background:#edf7f9;color:#174e62;font-size:.74rem;font-weight:800;letter-spacing:.07em;text-align:left;text-transform:uppercase;border-bottom:1px solid #dcebf0}
.nvt-tabela thead th:first-child{width:24%}.nvt-tabela thead th:last-child{width:145px;text-align:center}
.nvt-tabela tbody td{padding:15px 18px;vertical-align:top;border-bottom:1px solid #edf1f4}
.nvt-tabela tbody tr:last-child td{border-bottom:0}
.nvt-tabela tbody tr:nth-child(even){background:#fbfdfe}
.nvt-tabela tbody tr:hover{background:#f1fafb}
.nvt-tabela tbody td:first-child{color:#244c60;font-weight:750}
.nvt-tabela tbody td:last-child{text-align:center;vertical-align:middle}
.nvt-link-documento{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:94px;padding:8px 12px;border:1px solid #cde6eb;border-radius:10px;background:#f1fafb;color:#17647a;font-size:.8rem;font-weight:800;text-decoration:none;white-space:nowrap;transition:background .18s ease,border-color .18s ease,transform .18s ease}
.nvt-link-documento:hover{transform:translateY(-1px);border-color:#8ecbd5;background:#e2f5f7}
.nvt-nota{margin:17px 0 0;color:#71818d;font-size:.8rem;line-height:1.6}
@media(max-width:720px){.nvt-pagina{padding:24px 12px 42px}.nvt-cabecalho{align-items:flex-start;padding:25px 21px;border-radius:19px}.nvt-selo{flex-basis:74px;width:74px;height:74px;border-radius:19px;font-size:.54rem}.nvt-selo-icone{font-size:1.7rem}.nvt-cabecalho:after{right:-90px}.nvt-contato{align-items:flex-start;padding:18px;gap:12px}.nvt-contato-icone{flex-basis:42px;width:42px;height:42px}.nvt-contato-tag{display:none}.nvt-legislacao{padding:18px 13px;border-radius:19px}.nvt-secao-cabecalho{align-items:flex-start;flex-direction:column;gap:12px}.nvt-tabela{font-size:.84rem}.nvt-tabela tbody td{padding:13px 12px}}
@media(max-width:430px){.nvt-cabecalho{display:block}.nvt-selo{display:none}.nvt-titulo{font-size:1.8rem}.nvt-contato-nome{font-size:.94rem}}


/* ==========================================================
   SERVIÇO DE PLANTÃO — estilos exclusivos
   Mantidos no arquivo compartilhado css-nucleos.css
   ========================================================== */
.nsp-pagina{--nsp-azul:#155e75;--nsp-azul-escuro:#123c52;--nsp-texto:#263746;--nsp-suave:#617382;--nsp-borda:#e2eaf0;--nsp-fundo:#f5f8fb;color:var(--nsp-texto);background:var(--nsp-fundo);padding:clamp(28px,4vw,56px) 18px 64px;font-family:inherit}
.nsp-pagina,.nsp-pagina *{box-sizing:border-box}
.nsp-container{width:min(1180px,100%);margin:0 auto}
.nsp-cabecalho{position:relative;display:flex;align-items:center;justify-content:space-between;gap:28px;overflow:hidden;padding:clamp(28px,5vw,54px);border:1px solid #dceaf0;border-radius:24px;background:linear-gradient(120deg,#fff 0%,#f7fcfd 62%,#e8f6f8 100%);box-shadow:0 14px 38px rgba(20,66,88,.07)}
.nsp-cabecalho:after{content:"";position:absolute;width:260px;height:260px;right:110px;top:-160px;border:1px solid rgba(21,94,117,.12);border-radius:50%;box-shadow:0 0 0 28px rgba(21,94,117,.025),0 0 0 58px rgba(21,94,117,.02);pointer-events:none}
.nsp-identificacao{position:relative;z-index:1;max-width:820px}
.nsp-etiqueta{display:inline-flex;align-items:center;gap:8px;color:var(--nsp-azul);font-size:.74rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.nsp-etiqueta:before{content:"";width:22px;height:3px;border-radius:3px;background:#43a6b8}
.nsp-titulo{margin:13px 0 12px;color:var(--nsp-azul-escuro);font-size:clamp(1.85rem,4vw,3rem);font-weight:800;line-height:1.12;letter-spacing:-.035em}
.nsp-descricao{max-width:700px;margin:0;color:#526978;font-size:1.02rem;line-height:1.75}
.nsp-selo{position:relative;z-index:1;flex:0 0 122px;width:122px;height:122px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;border:1px solid #c9e7ec;border-radius:28px;background:rgba(255,255,255,.82);color:var(--nsp-azul);font-size:.68rem;font-weight:800;letter-spacing:.08em;text-align:center;box-shadow:0 10px 25px rgba(21,94,117,.07)}
.nsp-selo-icone{font-size:2.5rem;line-height:1}
.nsp-contato{display:flex;align-items:center;gap:17px;margin:22px 0 22px;padding:22px 25px;border:1px solid var(--nsp-borda);border-radius:18px;background:#fff;box-shadow:0 8px 24px rgba(27,62,82,.045)}
.nsp-contato-icone{display:flex;align-items:center;justify-content:center;flex:0 0 48px;width:48px;height:48px;border-radius:15px;background:#e8f6f8;color:var(--nsp-azul);font-size:1.4rem}
.nsp-contato-conteudo{display:flex;flex-direction:column;gap:5px;min-width:0}
.nsp-contato-rotulo{color:var(--nsp-suave);font-size:.76rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase}
.nsp-contato-nome{color:var(--nsp-azul-escuro);font-size:1.03rem;line-height:1.5}
.nsp-contato-telefone{color:#536a79;font-size:.92rem}
.nsp-contato-telefone span{font-weight:700;color:#536a79}
.nsp-contato-tag{margin-left:auto;padding:9px 13px;border-radius:999px;background:#f0f8fa;color:#376778;font-size:.76rem;font-weight:700;white-space:nowrap}
.nsp-informacao{display:flex;align-items:flex-start;gap:16px;padding:clamp(20px,3vw,30px);border:1px solid var(--nsp-borda);border-radius:20px;background:#fff;box-shadow:0 12px 34px rgba(27,62,82,.045)}
.nsp-informacao-icone{display:flex;flex:0 0 38px;width:38px;height:38px;align-items:center;justify-content:center;border-radius:12px;background:#e8f6f8;color:var(--nsp-azul);font-size:1.1rem;font-weight:800}
.nsp-informacao-titulo{margin:1px 0 7px;color:var(--nsp-azul-escuro);font-size:1.15rem;font-weight:800}
.nsp-informacao-texto{margin:0;color:var(--nsp-suave);font-size:.95rem;line-height:1.75}
@media(max-width:720px){.nsp-pagina{padding:24px 12px 42px}.nsp-cabecalho{align-items:flex-start;padding:25px 21px;border-radius:19px}.nsp-selo{flex-basis:74px;width:74px;height:74px;border-radius:19px;font-size:.54rem}.nsp-selo-icone{font-size:1.7rem}.nsp-cabecalho:after{right:-90px}.nsp-contato{align-items:flex-start;padding:18px;gap:12px}.nsp-contato-icone{flex-basis:42px;width:42px;height:42px}.nsp-contato-tag{display:none}.nsp-informacao{padding:20px 17px}}
@media(max-width:430px){.nsp-cabecalho{display:block}.nsp-selo{display:none}.nsp-titulo{font-size:1.8rem}.nsp-contato-nome{font-size:.94rem}}

/* ==========================================================
   COMUNICAÇÃO / NÚCLEO DE GESTÃO DA QUALIDADE
   Prefixo exclusivo: ncom-
   Mantém o padrão visual da página Serviço de Plantão.
   ========================================================== */
.ncom-pagina{--ncom-azul:#155e75;--ncom-azul-escuro:#123c52;--ncom-texto:#263746;--ncom-suave:#617382;--ncom-borda:#e2eaf0;--ncom-fundo:#f5f8fb;color:var(--ncom-texto);background:var(--ncom-fundo);padding:clamp(28px,4vw,56px) 18px 64px;font-family:inherit}
.ncom-pagina,.ncom-pagina *{box-sizing:border-box}
.ncom-container{width:min(1180px,100%);margin:0 auto}
.ncom-cabecalho{position:relative;display:flex;align-items:center;justify-content:space-between;gap:28px;overflow:hidden;padding:clamp(28px,5vw,54px);border:1px solid #dceaf0;border-radius:24px;background:linear-gradient(120deg,#fff 0%,#f7fcfd 62%,#e8f6f8 100%);box-shadow:0 14px 38px rgba(20,66,88,.07)}
.ncom-cabecalho:after{content:"";position:absolute;width:260px;height:260px;right:110px;top:-160px;border:1px solid rgba(21,94,117,.12);border-radius:50%;box-shadow:0 0 0 28px rgba(21,94,117,.025),0 0 0 58px rgba(21,94,117,.02);pointer-events:none}
.ncom-identificacao{position:relative;z-index:1;max-width:820px}
.ncom-etiqueta{display:inline-flex;align-items:center;gap:8px;color:var(--ncom-azul);font-size:.74rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.ncom-etiqueta:before{content:"";width:22px;height:3px;border-radius:3px;background:#43a6b8}
.ncom-titulo{margin:13px 0 12px;color:var(--ncom-azul-escuro);font-size:clamp(1.85rem,4vw,3rem);font-weight:800;line-height:1.12;letter-spacing:-.035em}
.ncom-descricao{max-width:700px;margin:0;color:#526978;font-size:1.02rem;line-height:1.75}
.ncom-selo{position:relative;z-index:1;flex:0 0 122px;width:122px;height:122px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;border:1px solid #c9e7ec;border-radius:28px;background:rgba(255,255,255,.82);color:var(--ncom-azul);font-size:.68rem;font-weight:800;letter-spacing:.08em;text-align:center;box-shadow:0 10px 25px rgba(21,94,117,.07)}
.ncom-selo-icone{font-size:2.5rem;line-height:1}
.ncom-contato{display:flex;align-items:center;gap:17px;margin:22px 0;padding:22px 25px;border:1px solid var(--ncom-borda);border-radius:18px;background:#fff;box-shadow:0 8px 24px rgba(27,62,82,.045)}
.ncom-contato-icone{display:flex;align-items:center;justify-content:center;flex:0 0 48px;width:48px;height:48px;border-radius:15px;background:#e8f6f8;color:var(--ncom-azul);font-size:1.4rem}
.ncom-contato-conteudo{display:flex;flex-direction:column;gap:5px;min-width:0}
.ncom-contato-rotulo{color:var(--ncom-suave);font-size:.76rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase}
.ncom-contato-nome{color:var(--ncom-azul-escuro);font-size:1.03rem;line-height:1.5}
.ncom-contato-telefone{color:#536a79;font-size:.92rem}
.ncom-contato-telefone span{font-weight:700;color:#536a79}
.ncom-contato-tag{margin-left:auto;padding:9px 13px;border-radius:999px;background:#f0f8fa;color:#376778;font-size:.76rem;font-weight:700;white-space:nowrap}
.ncom-informacao{display:flex;align-items:flex-start;gap:16px;padding:clamp(20px,3vw,30px);border:1px solid var(--ncom-borda);border-radius:20px;background:#fff;box-shadow:0 12px 34px rgba(27,62,82,.045)}
.ncom-informacao-icone{display:flex;flex:0 0 38px;width:38px;height:38px;align-items:center;justify-content:center;border-radius:12px;background:#e8f6f8;color:var(--ncom-azul);font-size:1.1rem;font-weight:800}
.ncom-informacao-titulo{margin:1px 0 7px;color:var(--ncom-azul-escuro);font-size:1.15rem;font-weight:800}
.ncom-informacao-texto{margin:0;color:var(--ncom-suave);font-size:.95rem;line-height:1.75}
@media(max-width:720px){.ncom-pagina{padding:24px 12px 42px}.ncom-cabecalho{align-items:flex-start;padding:25px 21px;border-radius:19px}.ncom-selo{flex-basis:74px;width:74px;height:74px;border-radius:19px;font-size:.54rem}.ncom-selo-icone{font-size:1.7rem}.ncom-cabecalho:after{right:-90px}.ncom-contato{align-items:flex-start;padding:18px;gap:12px}.ncom-contato-icone{flex-basis:42px;width:42px;height:42px}.ncom-contato-tag{display:none}.ncom-informacao{padding:20px 17px}}
@media(max-width:430px){.ncom-cabecalho{display:block}.ncom-selo{display:none}.ncom-titulo{font-size:1.8rem}.ncom-contato-nome{font-size:.94rem}}


/* ==========================================================
   ASSESSORIA TÉCNICA E DE PLANEJAMENTO DE AÇÕES
   Prefixo exclusivo: nac-
   Mesmo padrão visual de Serviço de Plantão e Comunicação.
   ========================================================== */
.nac-pagina{--nac-azul:#155e75;--nac-azul-escuro:#123c52;--nac-texto:#263746;--nac-suave:#617382;--nac-borda:#e2eaf0;--nac-fundo:#f5f8fb;color:var(--nac-texto);background:var(--nac-fundo);padding:clamp(28px,4vw,56px) 18px 64px;font-family:inherit}
.nac-pagina,.nac-pagina *{box-sizing:border-box}
.nac-container{width:min(1180px,100%);margin:0 auto}
.nac-cabecalho{position:relative;display:flex;align-items:center;justify-content:space-between;gap:28px;overflow:hidden;padding:clamp(28px,5vw,54px);border:1px solid #dceaf0;border-radius:24px;background:linear-gradient(120deg,#fff 0%,#f7fcfd 62%,#e8f6f8 100%);box-shadow:0 14px 38px rgba(20,66,88,.07)}
.nac-cabecalho:after{content:"";position:absolute;width:260px;height:260px;right:110px;top:-160px;border:1px solid rgba(21,94,117,.12);border-radius:50%;box-shadow:0 0 0 28px rgba(21,94,117,.025),0 0 0 58px rgba(21,94,117,.02);pointer-events:none}
.nac-identificacao{position:relative;z-index:1;max-width:820px}
.nac-etiqueta{display:inline-flex;align-items:center;gap:8px;color:var(--nac-azul);font-size:.74rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.nac-etiqueta:before{content:"";width:22px;height:3px;border-radius:3px;background:#43a6b8}
.nac-titulo{margin:13px 0 12px;color:var(--nac-azul-escuro);font-size:clamp(1.85rem,4vw,3rem);font-weight:800;line-height:1.12;letter-spacing:-.035em}
.nac-descricao{max-width:700px;margin:0;color:#526978;font-size:1.02rem;line-height:1.75}
.nac-selo{position:relative;z-index:1;flex:0 0 122px;width:122px;height:122px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;border:1px solid #c9e7ec;border-radius:28px;background:rgba(255,255,255,.82);color:var(--nac-azul);font-size:.68rem;font-weight:800;letter-spacing:.08em;text-align:center;box-shadow:0 10px 25px rgba(21,94,117,.07)}
.nac-selo-icone{font-size:2.5rem;line-height:1}
.nac-contato{display:flex;align-items:center;gap:17px;margin:22px 0;padding:22px 25px;border:1px solid var(--nac-borda);border-radius:18px;background:#fff;box-shadow:0 8px 24px rgba(27,62,82,.045)}
.nac-contato-icone{display:flex;align-items:center;justify-content:center;flex:0 0 48px;width:48px;height:48px;border-radius:15px;background:#e8f6f8;color:var(--nac-azul);font-size:1.4rem}
.nac-contato-conteudo{display:flex;flex-direction:column;gap:5px;min-width:0}
.nac-contato-rotulo{color:var(--nac-suave);font-size:.76rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase}
.nac-contato-nome{color:var(--nac-azul-escuro);font-size:1.03rem;line-height:1.5}
.nac-contato-telefone{color:#536a79;font-size:.92rem}
.nac-contato-telefone span{font-weight:700;color:#536a79}
.nac-contato-tag{margin-left:auto;padding:9px 13px;border-radius:999px;background:#f0f8fa;color:#376778;font-size:.76rem;font-weight:700;white-space:nowrap}
.nac-informacao{display:flex;align-items:flex-start;gap:16px;padding:clamp(20px,3vw,30px);border:1px solid var(--nac-borda);border-radius:20px;background:#fff;box-shadow:0 12px 34px rgba(27,62,82,.045)}
.nac-informacao-icone{display:flex;flex:0 0 38px;width:38px;height:38px;align-items:center;justify-content:center;border-radius:12px;background:#e8f6f8;color:var(--nac-azul);font-size:1.1rem;font-weight:800}
.nac-informacao-titulo{margin:1px 0 7px;color:var(--nac-azul-escuro);font-size:1.15rem;font-weight:800}
.nac-informacao-texto{margin:0;color:var(--nac-suave);font-size:.95rem;line-height:1.75}
@media(max-width:720px){.nac-pagina{padding:24px 12px 42px}.nac-cabecalho{align-items:flex-start;padding:25px 21px;border-radius:19px}.nac-selo{flex-basis:74px;width:74px;height:74px;border-radius:19px;font-size:.54rem}.nac-selo-icone{font-size:1.7rem}.nac-cabecalho:after{right:-90px}.nac-contato{align-items:flex-start;padding:18px;gap:12px}.nac-contato-icone{flex-basis:42px;width:42px;height:42px}.nac-contato-tag{display:none}.nac-informacao{padding:20px 17px}}
@media(max-width:430px){.nac-cabecalho{display:block}.nac-selo{display:none}.nac-titulo{font-size:1.8rem}.nac-contato-nome{font-size:.94rem}}


/* ==========================================================
   AJUSTE DO CABEÇALHO — NÚCLEO DE CONTROLE DE ALIMENTOS
   Cabeçalho com círculos decorativos e selo institucional
   ========================================================== */
.nca-cabecalho {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  min-height: 205px;
}

.nca-cabecalho::before {
  content: "";
  position: absolute;
  width: 245px;
  height: 245px;
  right: 88px;
  top: -145px;
  border: 1px solid rgba(21, 94, 117, .13);
  border-radius: 50%;
  box-shadow: 0 0 0 24px rgba(21, 94, 117, .035),
              0 0 0 50px rgba(21, 94, 117, .025),
              0 0 0 76px rgba(21, 94, 117, .018);
  pointer-events: none;
}

.nca-identificacao {
  position: relative;
  z-index: 1;
  flex: 1 1 auto;
  min-width: 0;
}

.nca-selo {
  position: relative;
  z-index: 1;
  display: flex;
  flex: 0 0 122px;
  width: 122px;
  height: 122px;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border: 1px solid #c9e7ec;
  border-radius: 28px;
  background: rgba(255, 255, 255, .86);
  color: var(--nca-azul);
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .08em;
  line-height: 1.5;
  text-align: center;
  box-shadow: 0 10px 25px rgba(21, 94, 117, .07);
}

.nca-selo-icone {
  display: block;
  color: #278ba1;
  font-size: 2.7rem;
  line-height: 1;
}

@media (max-width: 640px) {
  .nca-cabecalho {
    align-items: flex-start;
    gap: 18px;
    padding: 27px 22px;
  }

  .nca-cabecalho::before {
    right: -95px;
    top: -105px;
    width: 190px;
    height: 190px;
  }

  .nca-selo {
    flex-basis: 76px;
    width: 76px;
    height: 76px;
    gap: 4px;
    border-radius: 20px;
    font-size: .48rem;
    letter-spacing: .04em;
  }

  .nca-selo-icone {
    font-size: 1.8rem;
  }

  .nca-titulo {
    font-size: clamp(1.45rem, 6vw, 2rem);
  }
}

@media (max-width: 420px) {
  .nca-cabecalho {
    flex-wrap: wrap;
  }

  .nca-selo {
    flex-basis: 70px;
    width: 70px;
    height: 70px;
    margin-left: auto;
  }
}

/* ==========================================================
   PADRONIZAÇÃO FINAL DO CABEÇALHO — NÚCLEO DE CONTROLE DE ALIMENTOS
   Igual ao cabeçalho do Núcleo de Gestão da Qualidade (ncom-)
   ========================================================== */
.nca-cabecalho {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  min-height: 0;
  overflow: hidden;
  padding: clamp(28px, 5vw, 54px);
  border: 1px solid #dceaf0;
  border-radius: 24px;
  background: linear-gradient(120deg, #fff 0%, #f7fcfd 62%, #e8f6f8 100%);
  box-shadow: 0 14px 38px rgba(20, 66, 88, .07);
}

/* Círculos leves, com a mesma transparência usada no cabeçalho ncom */
.nca-cabecalho::before {
  content: "";
  position: absolute;
  width: 260px;
  height: 260px;
  right: 110px;
  top: -160px;
  border: 1px solid rgba(21, 94, 117, .12);
  border-radius: 50%;
  box-shadow: 0 0 0 28px rgba(21, 94, 117, .025),
              0 0 0 58px rgba(21, 94, 117, .02);
  pointer-events: none;
}

/* Remove a faixa lateral anterior para manter o mesmo acabamento visual */
.nca-cabecalho::after {
  content: none;
}

.nca-identificacao {
  position: relative;
  z-index: 1;
  flex: 1 1 auto;
  min-width: 0;
  max-width: 820px;
}

.nca-selo {
  position: relative;
  z-index: 1;
  display: flex;
  flex: 0 0 122px;
  width: 122px;
  height: 122px;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border: 1px solid #c9e7ec;
  border-radius: 28px;
  background: rgba(255, 255, 255, .82);
  color: var(--nca-azul);
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .08em;
  line-height: 1.5;
  text-align: center;
  box-shadow: 0 10px 25px rgba(21, 94, 117, .07);
}

.nca-selo-icone {
  display: block;
  color: #278ba1;
  font-size: 2.5rem;
  line-height: 1;
}

@media (max-width: 720px) {
  .nca-cabecalho {
    align-items: flex-start;
    gap: 18px;
    padding: 25px 21px;
    border-radius: 19px;
  }

  .nca-cabecalho::before {
    right: -90px;
    top: -160px;
  }

  .nca-selo {
    flex-basis: 74px;
    width: 74px;
    height: 74px;
    border-radius: 19px;
    font-size: .54rem;
  }

  .nca-selo-icone {
    font-size: 1.7rem;
  }
}

@media (max-width: 430px) {
  .nca-cabecalho {
    display: block;
  }

  .nca-selo {
    display: none;
  }

  .nca-titulo {
    font-size: 1.8rem;
  }
}


/* ==========================================================
   PADRONIZAÇÃO DO CABEÇALHO — NÚCLEO DE MEDICAMENTOS E PRODUTOS
   Mesmo padrão visual do Núcleo de Gestão da Qualidade (ncom-)
   ========================================================== */
.ncm-cabecalho {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  min-height: 0;
  overflow: hidden;
  padding: clamp(28px, 5vw, 54px);
  border: 1px solid #dceaf0;
  border-radius: 24px;
  background: linear-gradient(120deg, #fff 0%, #f7fcfd 62%, #e8f6f8 100%);
  box-shadow: 0 14px 38px rgba(20, 66, 88, .07);
}

/* Círculos decorativos discretos, iguais aos das demais páginas */
.ncm-cabecalho::before {
  content: "";
  position: absolute;
  width: 260px;
  height: 260px;
  right: 110px;
  top: -160px;
  border: 1px solid rgba(21, 94, 117, .12);
  border-radius: 50%;
  box-shadow: 0 0 0 28px rgba(21, 94, 117, .025),
              0 0 0 58px rgba(21, 94, 117, .02);
  pointer-events: none;
}

/* Retira a antiga faixa lateral para manter o cabeçalho padronizado */
.ncm-cabecalho::after {
  content: none;
}

.ncm-identificacao {
  position: relative;
  z-index: 1;
  flex: 1 1 auto;
  min-width: 0;
  max-width: 820px;
}

.ncm-etiqueta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--ncm-azul);
  font-size: .74rem;
  font-weight: 800;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.ncm-etiqueta::before {
  content: "";
  width: 22px;
  height: 3px;
  border-radius: 3px;
  background: #43a6b8;
}

.ncm-titulo {
  margin: 13px 0 12px;
  font-size: clamp(1.85rem, 4vw, 3rem);
  line-height: 1.12;
}

.ncm-descricao {
  max-width: 700px;
  margin: 0;
  color: #526978;
  font-size: 1.02rem;
  line-height: 1.75;
}

.ncm-selo {
  position: relative;
  z-index: 1;
  display: flex;
  flex: 0 0 122px;
  width: 122px;
  height: 122px;
  min-height: 122px;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border: 1px solid #c9e7ec;
  border-radius: 28px;
  background: rgba(255, 255, 255, .82);
  color: var(--ncm-azul);
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-align: center;
  box-shadow: 0 10px 25px rgba(21, 94, 117, .07);
}

.ncm-selo-icone {
  display: block;
  background: transparent;
  color: #278ba1;
  font-size: 2.5rem;
  line-height: 1;
}

@media (max-width: 720px) {
  .ncm-cabecalho {
    align-items: flex-start;
    gap: 18px;
    padding: 25px 21px;
    border-radius: 19px;
  }

  .ncm-cabecalho::before {
    right: -90px;
  }

  .ncm-selo {
    flex-basis: 74px;
    width: 74px;
    height: 74px;
    min-height: 74px;
    border-radius: 19px;
    font-size: .54rem;
  }

  .ncm-selo-icone {
    font-size: 1.7rem;
  }
}

@media (max-width: 430px) {
  .ncm-cabecalho {
    display: block;
  }

  .ncm-selo {
    display: none;
  }

  .ncm-titulo {
    font-size: 1.8rem;
  }
}


/* ==========================================================
   PADRONIZAÇÃO DO CABEÇALHO — NÚCLEO DE SAÚDE AMBIENTAL
   Prefixo exclusivo: nsa-
   Mantém o padrão visual dos demais núcleos, com círculos suaves e selo.
   ========================================================== */
.nsa-cabecalho {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  min-height: 205px;
  background: linear-gradient(120deg, #ffffff 0%, #f7fcfd 62%, #e8f6f8 100%);
  border-radius: 24px;
  box-shadow: 0 14px 38px rgba(20, 66, 88, .07);
}

.nsa-cabecalho::before {
  content: "";
  position: absolute;
  width: 260px;
  height: 260px;
  right: 110px;
  top: -160px;
  border: 1px solid rgba(21, 94, 117, .12);
  border-radius: 50%;
  box-shadow: 0 0 0 28px rgba(21, 94, 117, .025),
              0 0 0 58px rgba(21, 94, 117, .02);
  pointer-events: none;
}

.nsa-identificacao {
  position: relative;
  z-index: 1;
  max-width: 820px;
}

.nsa-selo {
  position: relative;
  z-index: 1;
  flex: 0 0 122px;
  width: 122px;
  height: 122px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border: 1px solid #c9e7ec;
  border-radius: 28px;
  background: rgba(255, 255, 255, .82);
  color: var(--nsa-azul);
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-align: center;
  box-shadow: 0 10px 25px rgba(21, 94, 117, .07);
}

.nsa-selo-icone {
  font-size: 2.5rem;
  line-height: 1;
}

@media (max-width: 720px) {
  .nsa-pagina { padding: 24px 12px 42px; }
  .nsa-cabecalho {
    align-items: flex-start;
    padding: 25px 21px;
    border-radius: 19px;
  }
  .nsa-cabecalho::before { right: -90px; }
  .nsa-selo {
    flex-basis: 74px;
    width: 74px;
    height: 74px;
    border-radius: 19px;
    font-size: .54rem;
  }
  .nsa-selo-icone { font-size: 1.7rem; }
}

@media (max-width: 430px) {
  .nsa-cabecalho { display: block; }
  .nsa-selo { display: none; }
  .nsa-titulo { font-size: 1.8rem; }
}


/* ==========================================================
   AJUSTE FINAL DO CABEÇALHO — NÚCLEO DE SAÚDE AMBIENTAL
   Mantém as atualizações de Medicamentos e padroniza o NSA.
   ========================================================== */
.nsa-cabecalho {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  min-height: 0;
  overflow: hidden;
  padding: clamp(28px, 5vw, 54px);
  border: 1px solid #dceaf0;
  border-radius: 24px;
  background: linear-gradient(120deg, #fff 0%, #f7fcfd 62%, #e8f6f8 100%);
  box-shadow: 0 14px 38px rgba(20, 66, 88, .07);
}

.nsa-cabecalho::before {
  content: "";
  position: absolute;
  width: 260px;
  height: 260px;
  right: 110px;
  top: -160px;
  border: 1px solid rgba(21, 94, 117, .12);
  border-radius: 50%;
  box-shadow: 0 0 0 28px rgba(21, 94, 117, .025),
              0 0 0 58px rgba(21, 94, 117, .02);
  pointer-events: none;
}

.nsa-cabecalho::after {
  content: none;
}

.nsa-identificacao {
  position: relative;
  z-index: 1;
  flex: 1 1 auto;
  min-width: 0;
  max-width: 820px;
}

.nsa-etiqueta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--nsa-azul);
  font-size: .74rem;
  font-weight: 800;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.nsa-etiqueta::before {
  content: "";
  width: 22px;
  height: 3px;
  border-radius: 3px;
  background: #43a6b8;
}

.nsa-titulo {
  margin: 13px 0 12px;
  font-size: clamp(1.85rem, 4vw, 3rem);
  line-height: 1.12;
}

.nsa-descricao {
  max-width: 700px;
  margin: 0;
  color: #526978;
  font-size: 1.02rem;
  line-height: 1.75;
}

.nsa-selo {
  position: relative;
  z-index: 1;
  display: flex;
  flex: 0 0 122px;
  width: 122px;
  height: 122px;
  min-height: 122px;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border: 1px solid #c9e7ec;
  border-radius: 28px;
  background: rgba(255, 255, 255, .82);
  color: var(--nsa-azul);
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .08em;
  line-height: 1.5;
  text-align: center;
  box-shadow: 0 10px 25px rgba(21, 94, 117, .07);
}

.nsa-selo-icone {
  display: block;
  background: transparent;
  color: #278ba1;
  font-size: 2.5rem;
  line-height: 1;
}

@media (max-width: 720px) {
  .nsa-cabecalho {
    align-items: flex-start;
    gap: 18px;
    padding: 25px 21px;
    border-radius: 19px;
  }

  .nsa-cabecalho::before {
    right: -90px;
  }

  .nsa-selo {
    flex-basis: 74px;
    width: 74px;
    height: 74px;
    min-height: 74px;
    border-radius: 19px;
    font-size: .54rem;
  }

  .nsa-selo-icone {
    font-size: 1.7rem;
  }
}

@media (max-width: 430px) {
  .nsa-cabecalho {
    display: block;
  }

  .nsa-selo {
    display: none;
  }

  .nsa-titulo {
    font-size: 1.8rem;
  }
}
