/**
 * Datavenia – ajustes pontuais do tema sobre o CSS do layout original.
 * (O footer usa a classe oficial .footer; nenhum override de layout é
 * necessário aqui no momento.)
 */

/* A rolagem suave do menu é feita via JS (jQuery animate 800ms). Desligamos o
   scroll-behavior nativo para os dois não conflitarem e travarem a animação. */
html,
body {
	scroll-behavior: auto;
}

/* ===================== Bloco de Notícias / Insights ===================== */
.dv-news { padding: 90px 0; position: relative; z-index: 1; }
.dv-news__head { text-align: center; margin-bottom: 48px; }
.dv-news__head .sup { display: inline-block; margin-bottom: 12px; }
.dv-news__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 32px;
}
.dv-news__card { display: flex; flex-direction: column; }
.dv-news__img {
	display: block;
	border-radius: 16px;
	overflow: hidden;
	aspect-ratio: 4 / 3;
}
.dv-news__img img {
	width: 100%; height: 100%;
	object-fit: cover; display: block;
	transition: transform .5s ease;
}
.dv-news__card:hover .dv-news__img img { transform: scale(1.06); }
.dv-news__body { padding-top: 20px; }
.dv-news__cat {
	display: inline-block;
	font-size: 13px; font-weight: 600;
	text-transform: uppercase; letter-spacing: .04em;
	color: var(--dv-accent, #b8932f);
	text-decoration: none; margin-bottom: 10px;
}
.dv-news__cat:hover { text-decoration: underline; }
.dv-news__title { font-size: 22px; line-height: 1.3; margin: 0 0 12px; }
.dv-news__title a { color: var(--dv-primary, #0b1f3a); text-decoration: none; transition: color .3s ease; }
.dv-news__title a:hover { color: var(--dv-accent, #b8932f); }
.dv-news__meta { font-size: 14px; color: #7b7a79; }
@media (max-width: 1023px) { .dv-news__grid { grid-template-columns: repeat(2, 1fr); gap: 24px; } }
@media (max-width: 600px) { .dv-news { padding: 56px 0; } .dv-news__grid { grid-template-columns: 1fr; } }

/* Botão "Carregar mais" do bloco de notícias */
.dv-news__more { text-align: center; margin-top: 44px; }
.dv-news__more-btn { cursor: pointer; transition: transform .25s ease, box-shadow .25s ease, background-color .25s ease; }
.dv-news__more-btn:hover { transform: translateY(-2px); box-shadow: 0 10px 24px rgba(0, 0, 0, .18); }
.dv-news__more-btn:active { transform: translateY(0); }
.dv-news__more-btn.is-loading { opacity: .6; pointer-events: none; cursor: default; }

/* ===================== Cabeçalho fixo ao rolar ===================== */
/* O cabeçalho fica SEMPRE fixo no topo: não sai da tela ao rolar, evitando
   qualquer "tranco". A altura é a mesma nos dois estados (não encolhe).
   No topo segue transparente; ao rolar (.is-fixed) apenas ganha fundo. */
#top {
	position: fixed;
	top: 0; left: 0; right: 0;
	z-index: 999;
}
#top.is-fixed {
	background-color: var(--dv-primary, #0b1f3a);
	box-shadow: 0 6px 24px rgba(0, 0, 0, .18);
}

/* ===================== Notícias relacionadas (single) ===================== */
/* Reaproveita o card oficial de notícias, em 4 colunas e título compacto. */
.dv-related { padding-bottom: 56px; }
/* Os cards oficiais nascem ocultos (data-animation); aqui não há container de
   animação, então garantimos que apareçam. */
.dv-related .dv-news__card { visibility: visible; }
.dv-related .dv-news__grid { grid-template-columns: repeat(4, 1fr); gap: 24px; }
.dv-related .dv-news__body { padding-top: 14px; }
.dv-related .dv-news__title { font-size: 17px; margin: 0 0 8px; }
.dv-related .dv-news__cat { font-size: 12px; margin-bottom: 7px; }
.dv-related .dv-news__meta { font-size: 12.5px; }
@media (max-width: 1023px) { .dv-related .dv-news__grid { grid-template-columns: repeat(2, 1fr); gap: 18px; } }
@media (max-width: 600px) { .dv-related .dv-news__grid { grid-template-columns: 1fr 1fr; gap: 14px; } .dv-related .dv-news__title { font-size: 14px; } }
