/**
 * Estilos Globais do Front-End (Hertz CMS)
 * Interface de aplicativo moderna e refinada — Ferri & Ferri
 */
:root {
	--hertz-primary: #14213d;
	--hertz-accent: #fca311;
	--hertz-text: #2b2d42;
	--hertz-muted: #8d99ae;
	--hertz-bg-card: #ffffff;
	--hertz-border: #edf2f7;
}

/* ==========================================================================
   A. ANIQUILAÇÃO TOTAL DE ESPAÇOS FANTASMAS (RESET DE ESTRUTURA)
   ========================================================================== */
/* Força o reset completo de altura mínima e espaçamentos do tema nativo */
body.single-hertz_article, body.single-post, body.archive, body.blog, body.home {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

/* Neutraliza o container do tema que calcula altura e joga paddings gigantes */
body.single-hertz_article #content, body.single-post #content, body.blog #content, body.archive #content,
body.single-hertz_article .site-content, body.single-post .site-content, body.blog .site-content, body.archive .site-content,
body.single-hertz_article #page, body.single-post #page, body.blog #page, body.archive #page,
body.single-hertz_article .site-main, body.single-post .site-main, body.blog .site-main, body.archive .site-main,
body.single-hertz_article main, body.single-post main, body.blog main, body.archive main {
	padding-top: 0 !important;
	margin-top: 0 !important;
	padding-bottom: 0 !important;
	margin-bottom: 0 !important;
	min-height: auto !important; /* Estoura a trava de vácuo do tema */
	height: auto !important;
	top: 0 !important;
}

/* Esconde absolutamente todas as variações conhecidas de cabeçalhos, títulos e áreas vazias do tema */
body.single-hertz_article #masthead, body.single-post #masthead, body.blog #masthead, body.archive #masthead,
body.single-hertz_article .site-header, body.single-post .site-header, body.blog .site-header, body.archive .site-header,
body.single-hertz_article .entry-header, body.single-post .entry-header, body.blog .entry-header, body.archive .entry-header,
body.single-hertz_article .page-header, body.single-post .page-header, body.blog .page-header, body.archive .page-header,
body.single-hertz_article .thb-page-header, body.single-post .thb-page-header, body.blog .thb-page-header, body.archive .thb-page-header,
body.single-hertz_article .post-header, body.single-post .post-header, body.blog .post-header, body.archive .post-header,
body.single-hertz_article #colophon, body.single-post #colophon, body.blog #colophon, body.archive #colophon,
body.single-hertz_article .site-footer, body.single-post .site-footer, body.blog .site-footer, body.archive .site-footer {
	display: none !important;
	height: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
	opacity: 0 !important;
	visibility: hidden !important;
}

/* Container Estrutural do App (Controla a proximidade real com o cabeçalho do Elementor) */
.hertz-app-blog-container, .hertz-front-container {
	max-width: 1200px !important;
	margin: 0 auto 60px auto !important;
	padding: 0 20px !important;
	box-sizing: border-box;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
	margin-top: 40px !important; /* Se ainda achar longe, diminua esse valor para 10px ou 20px */
	position: relative;
	z-index: 10;
}

/* ==========================================================================
   B. ESTILOS DO BLOG / FEED (ARCHIVE)
   ========================================================================== */
.hertz-app-header {
	text-align: left;
	margin-bottom: 35px;
	border-bottom: 1px solid var(--hertz-border);
	padding-bottom: 20px;
}
.hertz-app-tag {
	color: var(--hertz-accent);
	font-weight: 700;
	text-transform: uppercase;
	font-size: 11px;
	letter-spacing: 1.5px;
	display: block;
	margin-bottom: 4px;
}
.hertz-app-title {
	font-size: 32px;
	font-weight: 800;
	color: var(--hertz-primary);
	margin: 0;
	letter-spacing: -0.5px;
}

/* Grid de Alta Densidade (4 Colunas) */
.hertz-app-grid {
	display: grid !important;
	grid-template-columns: repeat(4, 1fr) !important;
	gap: 20px !important;
	width: 100% !important;
}

.hertz-app-card {
	background: var(--hertz-bg-card);
	border: 1px solid var(--hertz-border);
	border-radius: 10px;
	overflow: hidden;
	box-shadow: 0 2px 10px rgba(0,0,0,0.01);
	transition: transform 0.25s ease, box-shadow 0.25s ease;
	display: flex;
	flex-direction: column;
}
.hertz-app-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 10px 25px rgba(20, 33, 61, 0.06);
}

.hertz-app-card-thumb img, .hertz-app-placeholder {
	width: 100% !important;
	height: 150px !important;
	object-fit: cover !important;
	display: block;
}
.hertz-app-placeholder {
	background: linear-gradient(135deg, var(--hertz-primary), #0a1120);
}

.hertz-app-card-body {
	padding: 16px;
	display: flex;
	flex-direction: column;
	flex: 1;
}
.hertz-app-card-meta {
	font-size: 11px;
	font-weight: 600;
	text-transform: uppercase;
	margin-bottom: 8px;
}
.hertz-app-card-cat {
	color: var(--hertz-accent);
}
.hertz-app-card-time {
	color: var(--hertz-muted);
	margin-left: 4px;
}
.hertz-app-card-title {
	font-size: 16px !important;
	line-height: 1.4 !important;
	margin: 0 0 8px 0 !important;
	font-weight: 700;
}
.hertz-app-card-title a {
	color: var(--hertz-primary);
	text-decoration: none !important;
}
.hertz-app-card-title a:hover {
	color: var(--hertz-accent);
}
.hertz-app-card-excerpt {
	color: #4a5568;
	font-size: 13px;
	line-height: 1.5;
	margin: 0 0 15px 0;
}
.hertz-app-card-action {
	color: var(--hertz-primary);
	text-decoration: none;
	font-weight: 700;
	font-size: 13px;
	margin-top: auto;
	display: inline-block;
}

/* ==========================================================================
   C. INTERFACE DE LEITURA (SINGLE)
   ========================================================================== */
.hertz-single-article {
	max-width: 720px;
	margin: 0 auto;
}
.hertz-article-taxonomies a {
	background: #f7fafc;
	color: var(--hertz-primary);
	border: 1px solid var(--hertz-border);
	padding: 4px 10px;
	border-radius: 20px;
	text-decoration: none;
	font-size: 11px;
	font-weight: 600;
	text-transform: uppercase;
	display: inline-block;
}
.hertz-article-title {
	font-size: 38px;
	font-weight: 800;
	line-height: 1.25;
	color: var(--hertz-primary);
	margin: 15px 0;
	letter-spacing: -0.5px;
}
.hertz-article-meta {
	font-size: 13px;
	color: var(--hertz-muted);
}
.hertz-article-cover {
	margin: 25px 0 35px 0;
	border-radius: 8px;
	overflow: hidden;
}
.hertz-article-cover img {
	width: 100%;
	height: auto;
	display: block;
}
.hertz-article-content {
	font-size: 18px;
	line-height: 1.75;
	color: #2d3748;
}
.hertz-article-content p {
	margin-bottom: 22px;
}

/* ==========================================================================
   D. RESPONSIVIDADE (MOBILE 2 COLUNAS)
   ========================================================================== */
@media (max-width: 1024px) {
	.hertz-app-grid { grid-template-columns: repeat(3, 1fr) !important; }
}

@media (max-width: 768px) {
	.hertz-app-grid { 
		grid-template-columns: repeat(2, 1fr) !important; 
		gap: 12px !important;
	}
	.hertz-app-card-thumb img, .hertz-app-placeholder {
		height: 120px !important;
	}
	.hertz-app-card-body { padding: 12px; }
	.hertz-app-card-title { font-size: 14px !important; }
	.hertz-article-title { font-size: 28px; }
}