/*
 * As notícias (13-10-2026) — lista, categoria, etiqueta e a barra lateral da
 * página de cada notícia. A linguagem da Política de Privacidade e do
 * contacto: topo em marinho, fundo claro, cartões de 18px. Marinho #002f6d,
 * laranja #ff9202 (nunca com branco por cima), Poppins, contrastes AA.
 */
.nt { --marinho: #002f6d; --marinho-escuro: #001f4a; --laranja: #ff9202; --tinta: #1b2733; --texto: #334155; --suave: #5b6b7f; --linha: #e2e8f0; --fundo: #f5f7fb; background: var(--fundo); color: var(--tinta); }
.nt *, .nt *::before, .nt *::after { box-sizing: border-box; }
.nt-oculto { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

/* Topo */
.nt-topo { position: relative; overflow: hidden; background: radial-gradient(120% 140% at 85% 10%, #0b4a9c 0%, var(--marinho) 45%, var(--marinho-escuro) 100%); color: #fff; }
.nt-topo::after { content: ""; position: absolute; right: -8rem; bottom: -10rem; width: 26rem; height: 26rem; border-radius: 50%; background: radial-gradient(circle, rgba(255, 146, 2, .22), transparent 65%); pointer-events: none; }
.nt-topo .container { position: relative; z-index: 1; padding-top: 3.25rem; padding-bottom: 3.25rem; }
.nt .nt-marca { display: inline-flex; align-items: center; gap: .55rem; margin: 0 0 1.1rem; padding: .3rem .8rem .3rem .35rem; border: 1px solid rgba(255, 255, 255, .22); border-radius: 999px; background: rgba(255, 255, 255, .08); color: #fff; font-size: .78rem; font-weight: 600; }
.nt-marca__logo { display: inline-grid; place-items: center; width: 1.6rem; height: 1.6rem; border-radius: 50%; background: var(--laranja); color: #1b1b1b; font-size: .6rem; font-weight: 800; letter-spacing: -.02em; }
.nt-topo h1 { max-width: 44rem; margin: 0; color: #fff; font-size: clamp(1.75rem, 3.6vw, 2.75rem); font-weight: 700; line-height: 1.15; letter-spacing: -.01em; }
.nt .nt-topo__texto { max-width: 38rem; margin: 1rem 0 0; color: #dbe2eb; font-size: 1.04rem; line-height: 1.65; }
.nt-voltar { display: inline-block; margin-top: 1rem; color: #ffd08a; font-weight: 600; text-decoration: none; }
.nt-voltar:hover { color: #fff; text-decoration: underline; text-underline-offset: 3px; }

/* Pesquisa (topo e barra lateral) */
.nt-procura { position: relative; display: flex; align-items: center; max-width: 34rem; margin-top: 1.6rem; padding: .35rem; border-radius: 999px; background: #fff; box-shadow: 0 12px 28px -12px rgba(0, 10, 30, .45); }
.nt-procura svg { position: absolute; left: 1.1rem; width: 1.2rem; height: 1.2rem; color: var(--suave); pointer-events: none; }
.nt-procura input { flex: 1 1 auto; min-width: 0; height: 2.85rem; padding: 0 1rem 0 2.75rem; border: 0; border-radius: 999px; background: transparent; color: var(--tinta); font: inherit; font-size: .98rem; outline: none; }
.nt-procura input::-webkit-search-cancel-button { cursor: pointer; }
.nt-procura button { flex: 0 0 auto; height: 2.85rem; padding: 0 1.3rem; border: 0; border-radius: 999px; background: var(--marinho); color: #fff; font-weight: 600; cursor: pointer; transition: background .2s ease; }
.nt-procura button:hover { background: var(--marinho-escuro); }
.nt-procura:focus-within { box-shadow: 0 0 0 3px var(--laranja), 0 12px 28px -12px rgba(0, 10, 30, .45); }
.nt-procura--lado { max-width: none; margin: 0; border: 1px solid var(--linha); box-shadow: none; }
.nt-procura--lado:focus-within { box-shadow: 0 0 0 3px rgba(255, 146, 2, .5); }

/* Corpo */
.nt-corpo { display: grid; grid-template-columns: minmax(0, 1fr) 19rem; gap: 2rem; align-items: start; padding-top: 2.5rem; padding-bottom: 4rem; }
.nt-principal { min-width: 0; }

/* Cartões */
.nt-lista { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.25rem; }
.nt-cartao { display: flex; flex-direction: column; overflow: hidden; border: 1px solid var(--linha); border-radius: 18px; background: #fff; box-shadow: 0 1px 2px rgba(15, 23, 42, .04); transition: box-shadow .2s ease, transform .2s ease; }
.nt-cartao:hover { box-shadow: 0 16px 32px -18px rgba(0, 31, 74, .35); transform: translateY(-2px); }
.nt-cartao__imagem { display: block; aspect-ratio: 16 / 9; overflow: hidden; background: #eaf1fb; }
.nt-cartao__imagem img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .4s ease; }
.nt-cartao:hover .nt-cartao__imagem img { transform: scale(1.03); }
.nt-cartao__sem-imagem { display: grid; place-items: center; width: 100%; height: 100%; background: radial-gradient(120% 140% at 85% 10%, #0b4a9c 0%, var(--marinho) 55%, var(--marinho-escuro) 100%); color: #ffbf66; }
.nt-cartao__sem-imagem svg { width: 3rem; height: 3rem; }
.nt-cartao__corpo { display: flex; flex-direction: column; flex: 1 1 auto; padding: 1.25rem 1.35rem 1.4rem; }
.nt .nt-cartao__meta { display: flex; flex-wrap: wrap; align-items: center; gap: .35rem .55rem; margin: 0 0 .6rem; color: var(--suave); font-size: .8rem; }
.nt-etiqueta { display: inline-block; padding: .18rem .6rem; border-radius: 999px; background: #fff4e5; color: #8a4b00; font-size: .74rem; font-weight: 700; text-decoration: none; }
.nt-etiqueta:hover { background: #ffe6c2; color: #6b3a00; text-decoration: none; }
.nt-etiqueta--contorno { border: 1px solid var(--linha); background: #fff; color: var(--texto); font-weight: 600; }
.nt-etiqueta--contorno:hover { border-color: var(--marinho); background: #fff; color: var(--marinho); }
.nt .nt-cartao__titulo { margin: 0 0 .55rem; font-size: 1.12rem; font-weight: 700; line-height: 1.35; }
.nt-cartao__titulo a { color: var(--tinta); text-decoration: none; }
.nt-cartao__titulo a:hover { color: var(--marinho); }
.nt .nt-cartao__resumo { margin: 0 0 1rem; color: var(--texto); font-size: .93rem; line-height: 1.6; }
.nt-ler { margin-top: auto; color: var(--marinho); font-size: .9rem; font-weight: 700; text-decoration: none; }
.nt-ler:hover { color: var(--marinho-escuro); text-decoration: underline; text-underline-offset: 3px; }
.nt a:focus-visible, .nt button:focus-visible { outline: 3px solid var(--laranja); outline-offset: 2px; }

/* A primeira em destaque: deitada, ocupa a linha inteira */
.nt-cartao--destaque { grid-column: 1 / -1; display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); }
.nt-cartao--destaque .nt-cartao__imagem { aspect-ratio: auto; min-height: 100%; }
.nt-cartao--destaque .nt-cartao__corpo { padding: 1.75rem 1.9rem; justify-content: center; }
.nt .nt-cartao--destaque .nt-cartao__titulo { font-size: clamp(1.3rem, 2.2vw, 1.65rem); }

/* Paginação e contagem */
.nt-paginas { margin-top: 2rem; }
.nt-paginas .pagination { flex-wrap: wrap; gap: .35rem; margin: 0; }
.nt-paginas .page-link { min-width: 2.75rem; height: 2.75rem; display: grid; place-items: center; border: 1px solid var(--linha); border-radius: 10px !important; background: #fff; color: var(--marinho); font-weight: 600; }
.nt-paginas .page-item.active .page-link { border-color: var(--marinho); background: var(--marinho); color: #fff; }
.nt .nt-contagem { margin: 1rem 0 0; color: var(--suave); font-size: .85rem; }

/* Página vazia */
.nt-vazio { padding: 3rem 2rem; border: 1px solid var(--linha); border-radius: 18px; background: #fff; text-align: center; }
.nt-vazio__icone { display: inline-grid; place-items: center; width: 4rem; height: 4rem; margin-bottom: 1rem; border-radius: 18px; background: #eaf1fb; color: var(--marinho); }
.nt-vazio__icone svg { width: 2rem; height: 2rem; }
.nt .nt-vazio h2 { margin: 0 0 .5rem; color: var(--marinho); font-size: 1.4rem; font-weight: 700; }
.nt .nt-vazio p { max-width: 32rem; margin: 0 auto 1.4rem; color: var(--texto); font-size: .98rem; line-height: 1.65; }
.nt-vazio__accoes { display: flex; flex-wrap: wrap; justify-content: center; gap: .65rem; }
.nt-botao { display: inline-flex; align-items: center; justify-content: center; min-height: 46px; padding: .55rem 1.25rem; border: 1px solid var(--linha); border-radius: 999px; background: #fff; color: var(--marinho); font-size: .95rem; font-weight: 600; text-decoration: none; transition: background .2s ease, border-color .2s ease; }
.nt-botao:hover { border-color: var(--marinho); color: var(--marinho); text-decoration: none; }
.nt-botao--marinho { border-color: var(--marinho); background: var(--marinho); color: #fff; }
.nt-botao--marinho:hover { background: var(--marinho-escuro); color: #fff; }

/* Barra lateral */
.nt-lado { --marinho: #002f6d; --marinho-escuro: #001f4a; --laranja: #ff9202; --tinta: #1b2733; --texto: #334155; --suave: #5b6b7f; --linha: #e2e8f0; display: grid; gap: 1.25rem; }
.nt-bloco { padding: 1.35rem; border: 1px solid var(--linha); border-radius: 18px; background: #fff; }
.nt-lado .nt-bloco__titulo { margin: 0 0 .85rem; color: var(--marinho); font-size: 1rem; font-weight: 700; }
.nt-lado .nt-bloco__texto { margin: 0; color: var(--texto); font-size: .92rem; line-height: 1.6; }
.nt-recentes { display: grid; gap: .85rem; margin: 0; padding: 0; list-style: none; }
.nt-recentes a { display: grid; grid-template-columns: 4.5rem minmax(0, 1fr); gap: .75rem; align-items: center; text-decoration: none; }
.nt-recentes img, .nt-recentes__sem { display: block; width: 4.5rem; height: 3.1rem; border-radius: 10px; object-fit: cover; background: #eaf1fb; }
.nt-recentes__titulo { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; color: var(--tinta); font-size: .88rem; font-weight: 600; line-height: 1.35; }
.nt-recentes a:hover .nt-recentes__titulo { color: var(--marinho); }
.nt-recentes__data { display: block; margin-top: .15rem; color: var(--suave); font-size: .76rem; }
.nt-categorias { margin: 0; padding: 0; list-style: none; }
.nt-categorias a { display: flex; justify-content: space-between; align-items: center; gap: .75rem; padding: .55rem 0; border-top: 1px solid #edf1f6; color: var(--texto); font-size: .92rem; text-decoration: none; }
.nt-categorias li:first-child a { border-top: 0; padding-top: 0; }
.nt-categorias a:hover { color: var(--marinho); }
.nt-conta { min-width: 1.75rem; padding: .05rem .45rem; border-radius: 999px; background: #eef2f7; color: var(--suave); font-size: .75rem; font-weight: 700; text-align: center; }
.nt-etiquetas { display: flex; flex-wrap: wrap; gap: .45rem; }

/* A barra lateral também serve a página de cada notícia, fora de .nt: por
   isso as cores vêm de .nt-lado e nenhum estilo dela depende de .nt. */
@media (max-width: 991px) {
    .nt-corpo { grid-template-columns: minmax(0, 1fr); }
    .nt-cartao--destaque { grid-template-columns: minmax(0, 1fr); }
    .nt-cartao--destaque .nt-cartao__imagem { aspect-ratio: 16 / 9; }
}
@media (max-width: 767px) {
    .nt-topo .container { padding-top: 2.5rem; padding-bottom: 2.5rem; }
    .nt-lista { grid-template-columns: minmax(0, 1fr); }
    .nt-cartao--destaque .nt-cartao__corpo { padding: 1.25rem 1.35rem 1.4rem; }
    .nt-procura button { padding: 0 1rem; }
    .nt-vazio { padding: 2.25rem 1.25rem; }
}
@media (prefers-reduced-motion: reduce) { .nt-cartao, .nt-cartao__imagem img, .nt-procura button { transition: none; } .nt-cartao:hover, .nt-cartao:hover .nt-cartao__imagem img { transform: none; } }
