/* ==========================================================================
   Mecânica Online — Tema Oficial Redesign (Fiel à Produção)
   Referência: https://mecanicaonline.com.br/
   Zero dependências pesadas, 100% autoral, alta performance.
   ========================================================================== */

:root {
	--font-base: 'Roboto', -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
	--font-fira: 'Fira Sans', -apple-system, BlinkMacSystemFont, sans-serif;
	--font-condensed: 'Roboto Condensed', -apple-system, sans-serif;
	--max-width: 1240px;
	--gap: 1.5rem;

	--c-bg: #ffffff;
	--c-text: #1a1a1a;
	--c-muted: #757575;
	--c-border: #e2e2e2;

	/* Verde Neon Oficial Mecânica Online */
	--c-accent: #00ff00;
	--c-accent-dark: #00cc00;
	--c-accent-text: #05852c;
	--c-accent-glow: rgba(0, 255, 0, 0.4);

	/* Tons Escuros */
	--c-dark: #000000;
	--c-dark-surface: #0e0e0e;
	--c-dark-card: #151717;
	--c-dark-gray: #202323;
	--c-home-dark: #1e1e1e;

	/* Tons Claros para Cards de Especialistas */
	--c-light-card: #ececec;
}

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; overflow-x: hidden; }
body {
	margin: 0;
	font-family: var(--font-base);
	color: var(--c-text);
	background: var(--c-bg);
	line-height: 1.5;
	-webkit-font-smoothing: antialiased;
	overflow-x: hidden;
}
img { max-width: 100%; height: auto; display: block; }
a { color: inherit; text-decoration: none; transition: color 0.15s ease, background-color 0.15s ease; }
ul { list-style: none; margin: 0; padding: 0; }
button, input { font-family: inherit; font-size: 1rem; }
h1, h2, h3, h4 { margin: 0; font-family: var(--font-fira); line-height: 1.2; }

.screen-reader-text {
	position: absolute !important; width: 1px; height: 1px; overflow: hidden;
	clip: rect(1px, 1px, 1px, 1px); white-space: nowrap;
}
.mecon-skip-link {
	position: absolute; top: -50px; left: 1rem; background: var(--c-accent); color: #000;
	padding: 0.5rem 1rem; font-weight: 700; z-index: 1000;
}
.mecon-skip-link:focus { top: 1rem; }

.mecon-wrap {
	max-width: var(--max-width);
	margin: 0 auto;
	padding: 0 1.25rem;
}

/* ==========================================================================
   TOPBAR OFICIAL (Fundo Preto com Menu Utilitário Real)
   ========================================================================== */
.mecon-topbar {
	background: #000000;
	color: #ffffff;
	font-family: var(--font-fira);
	font-size: 0.8rem;
	border-bottom: 1px solid #1a1a1a;
}
.mecon-topbar__inner {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	padding-block: 0.4rem;
	gap: 0.8rem;
}
.mecon-topbar__left {
	display: flex;
	flex-wrap: wrap;
	gap: 1.1rem;
	align-items: center;
}
.mecon-topbar__link {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	font-weight: 500;
	color: #cccccc;
	letter-spacing: 0.02em;
}
.mecon-topbar__link:hover { color: var(--c-accent); }
.mecon-topbar__link--home svg { fill: currentColor; }
.mecon-topbar__link--highlight { color: var(--c-accent); font-weight: 600; }
.mecon-topbar__link--highlight:hover { color: #ffffff; text-decoration: underline; }

.mecon-topbar__right {
	display: flex;
	align-items: center;
	gap: 1.2rem;
	margin-left: auto;
}
.mecon-topbar__date {
	text-transform: uppercase;
	letter-spacing: 0.04em;
	font-size: 0.75rem;
	color: #cccccc;
}
.mecon-topbar__weather {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	color: #ffffff;
	font-weight: 600;
}
.mecon-topbar__weather svg { fill: var(--c-accent); }

/* ==========================================================================
   HEADER & LOGO OFICIAL & BANNER LEADERBOARD
   ========================================================================== */
.mecon-header {
	background: #000000;
	color: #ffffff;
}
.mecon-header__main {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding-block: 1rem;
	gap: 1.5rem;
}
.mecon-logo {
	display: flex;
	align-items: center;
	gap: 0.85rem;
	text-decoration: none;
	flex-shrink: 0;
}
.mecon-logo__img {
	max-width: 172px;
	height: auto;
	display: block;
}
.mecon-logo__caption {
	display: flex;
	flex-direction: column;
	line-height: 1.1;
}
.mecon-logo__title {
	font-family: var(--font-fira);
	font-size: 1.45rem;
	font-weight: 800;
	color: #ffffff;
	letter-spacing: -0.01em;
}
.mecon-logo__tagline {
	font-size: 0.72rem;
	color: #aaaaaa;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	margin-top: 2px;
}

.mecon-header__ad {
	display: none;
}
@media (min-width: 1200px) {
	.mecon-header__ad {
		display: block;
		margin-left: auto;
	}
}

/* ==========================================================================
   BARRA DE NAVEGAÇÃO PRINCIPAL (Fundo Preto com Traço Ativo Verde Neon)
   ========================================================================== */
.mecon-nav-bar {
	background: #080808;
	border-top: 2px solid #1a1a1a;
	border-bottom: 2px solid var(--c-accent);
	position: sticky;
	top: 0;
	z-index: 100;
}
.mecon-nav-bar__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.mecon-nav { display: none; }
.mecon-nav.is-open { display: block; width: 100%; }

.mecon-nav__list {
	display: flex;
	flex-direction: column;
}
.mecon-nav__list > li {
	position: relative;
}
.mecon-nav__list > li > a {
	position: relative;
	display: block;
	padding: 0.85rem 1rem;
	font-family: var(--font-fira);
	font-size: 0.95rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #ffffff;
	border-bottom: 1px solid #1a1a1a;
}
.mecon-nav__list > li > a:after {
	content: '';
	position: absolute;
	bottom: -2px;
	left: 0;
	right: 0;
	height: 3px;
	background-color: var(--c-accent);
	transform: scaleX(0);
	transition: transform 0.2s ease;
}
.mecon-nav__list > li:hover > a:after,
.mecon-nav__list > li.current-menu-item > a:after {
	transform: scaleX(1);
}
.mecon-nav__list > li:hover > a,
.mecon-nav__list > li.current-menu-item > a {
	color: var(--c-accent);
}

@media (max-width: 959px) {
	.mecon-nav__list > li:hover > a,
	.mecon-nav__list > li.current-menu-item > a {
		color: #ffffff;
	}
}

.mecon-nav__list > li.mecon-nav__badge-item > a:after {
	display: none;
}

/* Sub-menus dropdown */
.mecon-nav__list .sub-menu {
	display: none;
	background: #111111;
	border: 1px solid #282828;
	border-top: 2px solid var(--c-accent);
	padding: 0.5rem 0;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.5);
	min-width: 190px;
	z-index: 100;
}
.mecon-nav__list .sub-menu li a {
	display: block;
	padding: 0.55rem 1.1rem;
	font-size: 0.85rem;
	font-weight: 500;
	text-transform: none;
	color: #cccccc;
	border-bottom: 1px solid #1a1a1a;
}
.mecon-nav__list .sub-menu li a:hover {
	color: #000000;
	background: var(--c-accent);
}

.mecon-nav-bar__tools {
	display: flex;
	align-items: center;
	padding-left: 0.75rem;
}
.mecon-search-toggle {
	background: none;
	border: none;
	cursor: pointer;
	color: #ffffff;
	padding: 0.6rem;
	display: flex;
	align-items: center;
}
.mecon-search-toggle:hover { color: var(--c-accent); }

.mecon-menu-toggle {
	background: none;
	border: none;
	cursor: pointer;
	padding: 0.6rem;
	display: flex;
	flex-direction: column;
	gap: 4px;
}
.mecon-menu-toggle__bar,
.mecon-menu-toggle__bar::before,
.mecon-menu-toggle__bar::after {
	content: ''; display: block; width: 22px; height: 2px; background: #ffffff;
}
.mecon-menu-toggle__bar::before { transform: translateY(-6px); }
.mecon-menu-toggle__bar::after { transform: translateY(2px); }

/* Busca Expansível */
.mecon-search-bar {
	display: none;
	background: #000000;
	border-top: 1px solid #222222;
	padding: 0.85rem 0;
}
.mecon-search-bar.is-open { display: block; }
.mecon-search-form {
	display: flex;
	max-width: var(--max-width);
	margin: 0 auto;
	padding: 0 1.25rem;
}
.mecon-search-form input {
	flex: 1;
	background: #181818;
	border: 1px solid #333333;
	border-right: none;
	padding: 0.7rem 1.2rem;
	color: #ffffff;
	border-radius: 4px 0 0 4px;
	font-family: var(--font-fira);
	text-transform: uppercase;
}
.mecon-search-form input:focus { outline: none; border-color: var(--c-accent); }
.mecon-search-form button {
	background: var(--c-accent);
	color: #000000;
	border: none;
	padding: 0.7rem 1.4rem;
	font-family: var(--font-fira);
	font-weight: 800;
	letter-spacing: 0.05em;
	cursor: pointer;
	border-radius: 0 4px 4px 0;
	display: inline-flex;
	align-items: center;
	gap: 6px;
}

/* ==========================================================================
   SELO DE CATEGORIA (Pill Verde Neon)
   ========================================================================== */
.mecon-pill {
	display: inline-block;
	font-family: var(--font-fira);
	font-size: 0.75rem;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: var(--c-accent);
	margin-bottom: 0.45rem;
}
.mecon-pill:hover { text-decoration: underline; color: #ffffff; }

/* Em fundo claro */
.mecon-home-content .mecon-pill {
	color: var(--c-accent-text);
}
.mecon-home-content .mecon-pill:hover { color: #000000; }

/* ==========================================================================
   TOPO DA HOME COM BACKGROUND AUTOMOTIVO DE PRODUÇÃO
   ========================================================================== */
.mecon-home-dark {
	position: relative;
	background-color: #1a1a1a;
	background-image: linear-gradient(rgba(18, 18, 18, 0.88), rgba(22, 22, 22, 0.95)), url('../images/home-hero-bg.jpg');
	background-size: cover;
	background-position: center top;
	background-repeat: no-repeat;
	color: #ffffff;
	padding-top: 1.8rem;
	padding-bottom: 2.8rem;
}
@media (min-width: 960px) {
	.mecon-home-dark {
		background-attachment: fixed;
	}
}

.mecon-home-top {
	display: grid;
	grid-template-columns: 1fr;
	gap: 2rem;
}
.mecon-home-top__main,
.mecon-home-top__side {
	min-width: 0;
}

/* Hero Principal */
.mecon-hero-wrapper {
	margin-bottom: 1.5rem;
}
.mecon-card--hero {
	position: relative;
	display: block;
	aspect-ratio: 16 / 9;
	overflow: hidden;
	border-radius: 4px;
	background: #000000;
}
.mecon-hero__link {
	position: absolute;
	inset: 0;
	display: block;
}
.mecon-hero__link img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 0.4s ease;
}
.mecon-card--hero:hover .mecon-hero__link img {
	transform: scale(1.03);
}

.mecon-card--hero .mecon-card__overlay-body {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	padding: 3.5rem 1.8rem 1.5rem;
	background: linear-gradient(to top, rgba(0,0,0,0.92) 0%, rgba(0,0,0,0.6) 65%, rgba(0,0,0,0) 100%);
	pointer-events: none;
}
.mecon-card--hero .mecon-card__overlay-inner {
	pointer-events: auto;
}
.mecon-card--hero .mecon-card__title {
	font-family: var(--font-fira);
	font-size: 1.65rem;
	font-weight: 800;
	line-height: 1.2;
	color: #ffffff;
	margin: 0 0 0.5rem;
}
.mecon-card--hero .mecon-card__title a:hover {
	color: var(--c-accent);
}
.mecon-hero__meta {
	display: flex;
	align-items: center;
	gap: 0.6rem;
}
.mecon-hero__date {
	font-family: var(--font-fira);
	font-size: 0.75rem;
	color: rgba(255,255,255,0.55);
	letter-spacing: 0.04em;
	text-transform: uppercase;
}
.mecon-card--hero .mecon-hero__bar {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	height: 4px;
	background: var(--c-accent);
}

/* Banner Intermediário */
.mecon-home-mid-banner {
	margin-block: 1.5rem;
	display: flex;
	justify-content: center;
}

/* Grid 2x2: 4 Notícias em 2 Colunas e 2 Linhas */
.mecon-grid.mecon-grid--tiles,
.mecon-home-top__main .mecon-grid--tiles {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 1.25rem !important;
	margin-bottom: 1.8rem;
	overflow: visible;
}
.mecon-grid.mecon-grid--tiles > .mecon-card--tile,
.mecon-home-top__main .mecon-grid--tiles > .mecon-card--tile {
	min-width: 0;
	width: auto;
	max-width: none;
}
@media (max-width: 640px) {
	.mecon-grid.mecon-grid--tiles,
	.mecon-home-top__main .mecon-grid--tiles {
		grid-template-columns: minmax(0, 1fr) !important;
	}

	.mecon-wrap {
		padding-left: 0.75rem;
		padding-right: 0.75rem;
	}

	.mecon-topbar__inner {
		justify-content: center;
		padding-block: 0.55rem;
	}

	.mecon-topbar__left,
	.mecon-topbar__right {
		justify-content: center;
		margin-left: 0;
	}

	.mecon-topbar__left {
		gap: 0.7rem 0.85rem;
	}

	.mecon-topbar__right {
		width: 100%;
		gap: 0.6rem;
	}

	.mecon-topbar__date,
	.mecon-topbar__weather {
		font-size: 0.7rem;
	}

	.mecon-header__main {
		display: block;
		text-align: center;
		padding-block: 0.9rem;
	}

	.mecon-logo {
		justify-content: center;
		margin-bottom: 0.75rem;
	}

	.mecon-logo__img {
		max-width: 150px;
	}

	.mecon-nav-bar__inner {
		display: block;
	}

	.mecon-nav__list > li > a {
		padding-left: 0.85rem;
		padding-right: 0.85rem;
	}

	.mecon-section__head {
		flex-wrap: wrap;
	}

	.mecon-section__title,
	.mecon-section__more {
		white-space: normal;
	}

	.mecon-section__line {
		min-width: 0;
	}

	.mecon-grid--card-four,
	.mecon-grid--card-gray,
	.mecon-grid--card-dark,
	.mecon-grid--media {
		grid-template-columns: 1fr;
	}

	.mecon-footer__form {
		flex-direction: column;
	}

	.mecon-footer__form button {
		width: 100%;
	}

	.mecon-footer__social {
		justify-content: flex-start;
	}

	.mecon-single__title {
		font-size: 1.8rem;
	}

	.mecon-post-content {
		font-size: 1rem;
	}
}

@media (max-width: 480px) {
	.mecon-topbar__left {
		gap: 0.5rem 0.7rem;
	}

	.mecon-topbar__link {
		font-size: 0.72rem;
	}

	.mecon-card--hero .mecon-card__title,
	.mecon-card--tile .mecon-card__title,
	.mecon-card--card-gray .mecon-card__title,
	.mecon-card--card-dark .mecon-card__title,
	.mecon-card--card-four .mecon-card__title {
		font-size: 1rem;
	}

	.mecon-compact-item {
		gap: 0.7rem;
	}

	.mecon-compact-item__thumb {
		width: 72px;
		height: 58px;
	}

	.mecon-footer__title {
		font-size: 0.95rem;
	}
}

.mecon-card--tile {
	background: #000000;
	border-bottom: 4px solid var(--c-accent);
	border-radius: 4px;
	overflow: hidden;
	display: flex;
	flex-direction: column;
}
.mecon-card--tile .mecon-card__thumb {
	aspect-ratio: 16 / 9;
	overflow: hidden;
	background: #111111;
}
.mecon-card--tile .mecon-card__thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.3s ease;
}
.mecon-card--tile:hover .mecon-card__thumb img {
	transform: scale(1.05);
}
.mecon-card--tile .mecon-card__body {
	padding: 1.1rem 1.25rem 1.35rem;
	flex: 1;
}
.mecon-card--tile .mecon-card__title {
	font-size: 1.05rem;
	font-weight: 800;
	line-height: 1.25;
	color: #ffffff;
	margin-bottom: 0.5rem;
}
.mecon-card--tile .mecon-card__title a:hover {
	color: var(--c-accent);
}
.mecon-card--tile .mecon-card__meta {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	margin-top: auto;
}
.mecon-card--tile .mecon-card__date {
	font-size: 0.72rem;
	color: rgba(255,255,255,0.5);
	font-family: var(--font-fira);
	letter-spacing: 0.03em;
}

/* Placeholder para imagens sem thumbnail */
.mecon-card__placeholder {
	display: block;
	width: 100%;
	height: 100%;
	background: linear-gradient(135deg, #111 0%, #222 100%);
	position: relative;
}
.mecon-card__placeholder::after {
	content: 'MecOn';
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: var(--font-fira);
	font-weight: 900;
	font-size: 1rem;
	color: rgba(0,255,0,0.3);
	letter-spacing: 0.1em;
}

/* 3 Anúncios em 3 Colunas Embaixo das 4 Notícias */
.mecon-grid.mecon-grid--three-ads,
.mecon-home-top__main .mecon-grid--three-ads {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: 1.25rem !important;
	margin-bottom: 2rem;
}
.mecon-grid--three-ads > .mecon-ad-slot {
	min-width: 0;
	width: 100%;
}
@media (max-width: 580px) {
	.mecon-grid.mecon-grid--three-ads,
	.mecon-home-top__main .mecon-grid--three-ads {
		grid-template-columns: 1fr !important;
	}
}
@media (min-width: 581px) and (max-width: 768px) {
	.mecon-grid.mecon-grid--three-ads,
	.mecon-home-top__main .mecon-grid--three-ads {
		grid-template-columns: repeat(2, 1fr) !important;
	}
}

.mecon-ad--box {
	background: #ffffff;
	border: 1px solid #dcdcdc;
	border-radius: 4px;
	aspect-ratio: 16 / 11;
	min-height: 180px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 1.2rem;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
	position: relative;
	overflow: hidden;
}
.mecon-ad--box::after {
	content: '';
	position: absolute;
	inset: 0;
	border: 2px dashed rgba(0, 255, 0, 0.4);
	margin: 8px;
	border-radius: 3px;
	pointer-events: none;
}
.mecon-ad--box .mecon-ad-slot__label {
	font-family: var(--font-fira);
	color: #777777;
	font-weight: 800;
	letter-spacing: 0.12em;
	font-size: 0.72rem;
	text-transform: uppercase;
}

/* ==========================================================================
   COLUNA LATERAL DA HOME
   ========================================================================== */
.mecon-side-widget {
	margin-bottom: 1.8rem;
}

/* Box Newsletter */
.mecon-newsletter-box {
	background: #000000;
	border-top: 3px solid var(--c-accent);
	padding: 1.4rem;
	border-radius: 4px;
}
.mecon-newsletter-box__tag {
	font-family: var(--font-fira);
	font-size: 0.72rem;
	font-weight: 800;
	color: var(--c-accent);
	letter-spacing: 0.08em;
	display: block;
	margin-bottom: 0.3rem;
}
.mecon-newsletter-box__title {
	color: #ffffff;
	font-size: 1.1rem;
	font-weight: 800;
	letter-spacing: 0.02em;
	margin-bottom: 0.4rem;
}
.mecon-newsletter-box__desc {
	font-size: 0.82rem;
	color: #aaaaaa;
	margin: 0 0 1rem;
	line-height: 1.4;
}
.mecon-newsletter-box__form {
	display: flex;
	flex-direction: column;
	gap: 0.6rem;
}
.mecon-newsletter-box__form input {
	background: #181818;
	border: 1px solid #333333;
	padding: 0.65rem 0.9rem;
	color: #ffffff;
	font-size: 0.85rem;
	border-radius: 3px;
}
.mecon-newsletter-box__form input:focus {
	outline: none;
	border-color: var(--c-accent);
}
.mecon-newsletter-box__form button {
	background: #0077ff;
	color: #ffffff;
	border: none;
	padding: 0.65rem;
	font-family: var(--font-fira);
	font-size: 0.85rem;
	font-weight: 800;
	letter-spacing: 0.05em;
	cursor: pointer;
	border-radius: 3px;
}
.mecon-newsletter-box__form button:hover {
	background: #0055cc;
}

/* Lista Compacta de Notícias */
.mecon-compact-list {
	display: flex;
	flex-direction: column;
	gap: 1.1rem;
	margin-bottom: 1.8rem;
}
.mecon-compact-item {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 0.9rem;
	padding-bottom: 1.1rem;
	border-bottom: 1px solid rgba(255,255,255,0.08);
}
.mecon-compact-item:last-child {
	border-bottom: none;
	padding-bottom: 0;
}
.mecon-compact-item__text {
	flex: 1;
	min-width: 0;
}
.mecon-compact-item__title {
	font-size: 0.92rem;
	font-weight: 800;
	line-height: 1.3;
	color: #ffffff;
}
.mecon-compact-item__title a:hover {
	color: var(--c-accent);
}
.mecon-compact-item__date {
	display: block;
	font-size: 0.7rem;
	color: rgba(255,255,255,0.45);
	font-family: var(--font-fira);
	letter-spacing: 0.02em;
	margin-top: 0.3rem;
}
.mecon-compact-item__thumb {
	flex-shrink: 0;
	width: 80px;
	height: 65px;
	border-radius: 3px;
	overflow: hidden;
	background: #111111;
}
.mecon-compact-item__thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* Box Colunista (Fernando Calmon / AutoEspecialistas) */
.mecon-columnist-box {
	background: #000000;
	border-top: 3px solid var(--c-accent);
	padding: 1.4rem;
	border-radius: 4px;
	margin-bottom: 1.8rem;
	text-align: center;
}
.mecon-columnist-box__badge {
	font-family: var(--font-fira);
	font-size: 0.72rem;
	font-weight: 900;
	text-transform: uppercase;
	color: var(--c-accent);
	letter-spacing: 0.08em;
	margin-bottom: 0.8rem;
}
.mecon-columnist-box__photo {
	width: 100px;
	height: 100px;
	margin: 0 auto 0.9rem;
	border-radius: 50%;
	overflow: hidden;
	border: 2px solid var(--c-accent);
}
.mecon-columnist-box__photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.mecon-columnist-box__name {
	color: #ffffff;
	font-size: 1.15rem;
	font-weight: 900;
	margin-bottom: 0.3rem;
}
.mecon-columnist-box__desc {
	font-size: 0.8rem;
	color: #999999;
	line-height: 1.4;
	margin: 0 0 0.8rem;
}
.mecon-columnist-box__link {
	font-family: var(--font-fira);
	font-size: 0.78rem;
	font-weight: 800;
	color: var(--c-accent);
	text-transform: uppercase;
	letter-spacing: 0.05em;
}
.mecon-columnist-box__link:hover { text-decoration: underline; color: #ffffff; }

.mecon-side-banner {
	margin-top: 1.5rem;
	display: flex;
	justify-content: center;
}
.mecon-side-banner:has(.adsbygoogle[data-ad-status="unfilled"]) {
	display: none;
}

/* ==========================================================================
   SEÇÕES DE CONTEÚDO (AutoEspecialistas, Avaliações, Vídeos, etc.)
   ========================================================================== */
.mecon-home-content {
	background: #ffffff;
	padding-block: 2rem 3rem;
}
.mecon-section {
	margin-bottom: 2.5rem;
	position: relative;
	overflow: hidden;
	padding-top: 0.5rem;
}

/* Cabeçalho com Linha Verde Neon Contínua */
.mecon-section__head {
	display: flex;
	align-items: center;
	gap: 1rem;
	margin-bottom: 1.25rem;
	position: relative;
	z-index: 1;
	background: #ffffff;
}
.mecon-section__title {
	font-family: var(--font-fira);
	font-size: 1.2rem;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: -0.01em;
	color: #111111;
	white-space: nowrap;
	flex-shrink: 0;
	padding-right: 0.5rem;
}
.mecon-section__line {
	flex: 1;
	height: 3px;
	min-width: 20px;
	background: var(--c-accent);
	align-self: center;
}
.mecon-section__more {
	font-family: var(--font-fira);
	font-size: 0.85rem;
	font-weight: 800;
	text-transform: uppercase;
	color: #111111;
	white-space: nowrap;
}
.mecon-section__more:hover { color: var(--c-accent-text); }

/* Setas de Navegação das Seções */
.mecon-section__footer {
	display: flex;
	justify-content: flex-start;
	margin-top: 1rem;
}
.mecon-section__arrows {
	display: flex;
	gap: 4px;
}
.mecon-arrow {
	width: 28px;
	height: 28px;
	background: #111111;
	color: #ffffff;
	border: none;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	font-size: 1.2rem;
	line-height: 1;
	border-radius: 2px;
	transition: background 0.15s ease;
}
.mecon-arrow:hover {
	background: var(--c-accent);
	color: #000000;
}

/* Grid de Cards */
.mecon-grid {
	display: flex;
	flex-wrap: nowrap;
	gap: 1.5rem;
	overflow-x: auto;
	scroll-behavior: smooth;
	scrollbar-width: none;
	-ms-overflow-style: none;
	padding-bottom: 0.25rem;
}
.mecon-grid::-webkit-scrollbar {
	display: none;
}
.mecon-grid > .mecon-card {
	flex: 0 0 360px;
	scroll-snap-align: start;
}

/* Seção AutoEspecialistas (3 Cards em Fundo Cinza Claro) */
.mecon-grid--card-gray {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.5rem;
	overflow: hidden;
}
@media (min-width: 768px) {
	.mecon-grid--card-gray {
		grid-template-columns: repeat(3, 1fr);
		display: flex;
	}
	.mecon-grid--card-gray > .mecon-card {
		flex-basis: 360px;
	}
}
.mecon-card--card-gray {
	background: var(--c-light-card);
	border-radius: 4px;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	contain: layout;
}
.mecon-card--card-gray .mecon-card__thumb {
	aspect-ratio: 16 / 10;
	background: #dddddd;
	overflow: hidden;
}
.mecon-card--card-gray .mecon-card__thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.3s ease;
}
.mecon-card--card-gray:hover .mecon-card__thumb img {
	transform: scale(1.04);
}
.mecon-card--card-gray .mecon-card__body {
	padding: 1.2rem 1.35rem 1.5rem;
}
.mecon-card--card-gray .mecon-card__title {
	font-size: 1.15rem;
	font-weight: 800;
	line-height: 1.25;
	color: #111111;
}
.mecon-card--card-gray .mecon-card__title a:hover {
	color: var(--c-accent-text);
}

/* Seção Avaliações e Lançamentos (3 Cards em Fundo Cinza Escuro Grafite) */
.mecon-grid--card-dark {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.5rem;
}
@media (min-width: 768px) {
	.mecon-grid--card-dark {
		grid-template-columns: repeat(3, 1fr);
		display: flex;
	}
	.mecon-grid--card-dark > .mecon-card {
		flex-basis: 360px;
	}
}
.mecon-card--card-dark {
	background: var(--c-dark-gray);
	border-radius: 4px;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	color: #ffffff;
}
.mecon-card--card-dark .mecon-card__thumb {
	aspect-ratio: 16 / 10;
	background: #111111;
	overflow: hidden;
}
.mecon-card--card-dark .mecon-card__thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.3s ease;
}
.mecon-card--card-dark:hover .mecon-card__thumb img {
	transform: scale(1.04);
}
.mecon-card--card-dark .mecon-card__body {
	padding: 1.2rem 1.35rem 1.5rem;
}
.mecon-card--card-dark .mecon-card__title {
	font-size: 1.15rem;
	font-weight: 800;
	line-height: 1.25;
	color: #ffffff;
}
.mecon-card--card-dark .mecon-card__title a:hover {
	color: var(--c-accent);
}

/* Seção Vídeos e Podcasts (Cards com Play Button) */
.mecon-grid--media {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.5rem;
}
@media (min-width: 768px) {
	.mecon-grid--media {
		grid-template-columns: repeat(3, 1fr);
		display: flex;
	}
	.mecon-grid--media > .mecon-card {
		flex-basis: 360px;
	}
}
.mecon-card--media .mecon-card__thumb {
	position: relative;
	aspect-ratio: 16 / 9;
	background: #000000;
	border-radius: 4px;
	overflow: hidden;
}
.mecon-card--media .mecon-card__thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	opacity: 0.85;
}
.mecon-play-icon {
	position: absolute;
	inset: 0;
	margin: auto;
	width: 48px;
	height: 48px;
	background: rgba(0, 0, 0, 0.7);
	border: 2px solid var(--c-accent);
	color: var(--c-accent);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: transform 0.2s ease, background 0.2s ease;
}
.mecon-card--media:hover .mecon-play-icon {
	transform: scale(1.15);
	background: var(--c-accent);
	color: #000000;
}
.mecon-card--media .mecon-card__body {
	padding: 0.8rem 0;
}

/* Seções com Grid de 4 Colunas (Mecânica Online & Destaques) */
.mecon-grid--card-four {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.5rem;
}
@media (min-width: 550px) {
	.mecon-grid--card-four {
		grid-template-columns: repeat(2, 1fr);
		display: flex;
	}
	.mecon-grid--card-four > .mecon-card {
		flex-basis: 320px;
	}
}
@media (min-width: 960px) {
	.mecon-grid--card-four {
		grid-template-columns: repeat(4, 1fr);
		display: flex;
	}
	.mecon-grid--card-four > .mecon-card {
		flex-basis: 320px;
	}
}
.mecon-card--card-four {
	background: #ffffff;
	border: 1px solid #eeeeee;
	border-radius: 4px;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	transition: box-shadow 0.2s ease;
}
.mecon-card--card-four:hover {
	box-shadow: 0 4px 16px rgba(0,0,0,0.08);
}
.mecon-card--card-four .mecon-card__thumb {
	aspect-ratio: 16 / 10;
	background: #f4f4f4;
	overflow: hidden;
}
.mecon-card--card-four .mecon-card__thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.3s ease;
}
.mecon-card--card-four:hover .mecon-card__thumb img {
	transform: scale(1.04);
}
.mecon-card--card-four .mecon-card__body {
	padding: 1rem 1.15rem 1.25rem;
}
.mecon-card--card-four .mecon-card__title {
	font-size: 1.05rem;
	font-weight: 800;
	line-height: 1.25;
	color: #111111;
}
.mecon-card--card-four .mecon-card__title a:hover {
	color: var(--c-accent-text);
}

.mecon-home-section-banner {
	margin-block: 2.5rem;
	display: flex;
	justify-content: center;
}

/* ==========================================================================
   BANNERS PUBLICITÁRIOS (Formatos Padrão IAB)
   ========================================================================== */
.mecon-ad-slot {
	background: #f5f5f5;
	border: 1px dashed #d0d0d0;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	position: relative;
	text-align: center;
	border-radius: 4px;
	overflow: hidden;
}
.mecon-ad-slot:has(.adsbygoogle[data-ad-status="unfilled"]) {
	display: none !important;
}
.mecon-ad-slot__content,
.mecon-ad-slot__content > ins,
.mecon-ad-slot__content > iframe,
.adsbygoogle,
.adsbygoogle iframe {
	max-width: 100% !important;
	display: block;
}
.mecon-ad-slot__label {
	font-family: var(--font-fira);
	font-size: 0.65rem;
	color: #888888;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	margin-bottom: 2px;
}
.mecon-ad--leaderboard {
	width: 728px;
	height: 90px;
	max-width: 100%;
}
.mecon-ad--billboard {
	width: 970px;
	height: 100px;
	max-width: 100%;
}
.mecon-ad--sidebar {
	width: 300px;
	height: 250px;
	max-width: 100%;
}

/* ==========================================================================
   RODAPÉ (Footer)
   ========================================================================== */
.mecon-footer {
	background: #000000;
	color: #cccccc;
	border-top: 4px solid var(--c-accent);
	padding-top: 3rem;
}
.mecon-footer__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 2.5rem;
	padding-bottom: 2.5rem;
}
@media (min-width: 650px) {
	.mecon-footer__grid { grid-template-columns: repeat(2, 1fr); }
}
@media (min-width: 960px) {
	.mecon-footer__grid { grid-template-columns: 1.4fr 1fr 1fr 1.3fr; }
}

.mecon-footer__logo {
	display: inline-block;
	margin-bottom: 0.6rem;
}
.mecon-footer__logo img {
	max-width: 160px;
	height: auto;
}
.mecon-footer__tagline {
	font-family: var(--font-fira);
	font-size: 0.82rem;
	font-weight: 700;
	color: var(--c-accent);
	margin: 0 0 0.5rem;
}
.mecon-footer__desc {
	font-size: 0.85rem;
	color: #999999;
	line-height: 1.6;
	margin: 0 0 1.2rem;
}
.mecon-footer__social {
	display: flex;
	gap: 0.8rem;
}
.mecon-footer__social a {
	width: 34px;
	height: 34px;
	background: #181818;
	color: #aaaaaa;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: background 0.15s ease, color 0.15s ease;
}
.mecon-footer__social a:hover {
	background: var(--c-accent);
	color: #000000;
}

.mecon-footer__title {
	font-family: var(--font-fira);
	font-size: 1.05rem;
	font-weight: 900;
	color: var(--c-accent);
	letter-spacing: 0.05em;
	text-transform: uppercase;
	margin-bottom: 1.1rem;
}
.mecon-footer__links {
	display: flex;
	flex-direction: column;
	gap: 0.55rem;
	font-size: 0.88rem;
}
.mecon-footer__links a {
	color: #bbbbbb;
}
.mecon-footer__links a:hover {
	color: #ffffff;
	padding-left: 4px;
}

.mecon-footer__sub {
	font-size: 0.82rem;
	color: #999999;
	margin-bottom: 0.8rem;
	line-height: 1.4;
}
.mecon-footer__form {
	display: flex;
	gap: 4px;
	margin-bottom: 1.5rem;
}
.mecon-footer__form input {
	flex: 1;
	background: #141414;
	border: 1px solid #333333;
	padding: 0.6rem 0.8rem;
	color: #ffffff;
	font-size: 0.85rem;
	border-radius: 2px;
}
.mecon-footer__form button {
	background: var(--c-accent);
	color: #000000;
	border: none;
	padding: 0.6rem 0.9rem;
	font-family: var(--font-fira);
	font-size: 0.8rem;
	font-weight: 800;
	cursor: pointer;
	border-radius: 2px;
}

.mecon-footer__podcast-box {
	background: #111111;
	border: 1px solid #242424;
	padding: 1rem;
	border-radius: 4px;
}
.mecon-footer__podcast-box h4 {
	font-family: var(--font-fira);
	color: #ffffff;
	font-size: 0.95rem;
	font-weight: 900;
	margin-bottom: 0.3rem;
	display: flex;
	align-items: center;
	gap: 6px;
}
.mecon-footer__podcast-box p {
	font-size: 0.78rem;
	color: #888888;
	margin: 0 0 0.8rem;
}
.mecon-btn--spotify {
	display: inline-block;
	background: #1db954;
	color: #ffffff;
	font-family: var(--font-fira);
	font-size: 0.78rem;
	font-weight: 800;
	padding: 0.45rem 1rem;
	border-radius: 20px;
	letter-spacing: 0.04em;
}
.mecon-btn--spotify:hover {
	background: #1aa34a;
}

.mecon-footer__ad {
	display: flex;
	justify-content: center;
	padding-bottom: 2rem;
}

.mecon-footer__bottom {
	border-top: 1px solid #1a1a1a;
	padding-block: 1.25rem;
	text-align: center;
}
.mecon-footer__bottom p {
	margin: 0;
	font-size: 0.8rem;
	color: #777777;
}

/* ==========================================================================
   LAYOUTS INTERNOS (Single, Archive, Page)
   ========================================================================== */
.mecon-layout {
	display: grid;
	grid-template-columns: 1fr;
	gap: 2.5rem;
	padding-block: 2rem;
}
@media (min-width: 960px) {
	.mecon-layout { grid-template-columns: 2.4fr 1fr; }
}

.mecon-breadcrumb {
	font-size: 0.85rem;
	color: var(--c-muted);
	margin-bottom: 1.25rem;
}
.mecon-breadcrumb a { color: var(--c-accent-text); }
.mecon-breadcrumb span { margin: 0 0.35rem; }

.mecon-single__head { margin-bottom: 1.25rem; }
.mecon-single__title {
	font-family: var(--font-fira);
	font-size: 2.3rem;
	font-weight: 900;
	line-height: 1.15;
	letter-spacing: -0.02em;
	margin: 0.4rem 0 0.6rem;
}
.mecon-single__thumb {
	border-radius: 6px;
	overflow: hidden;
	margin-bottom: 1.5rem;
}
.mecon-single__content {
	font-size: 1.1rem;
	line-height: 1.8;
}
.mecon-single__content p { margin: 0 0 1.3em; }
.mecon-single__content img { border-radius: 4px; margin-block: 0.8em; }
.mecon-single__tags {
	margin-top: 2rem;
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}
.mecon-single__tags a {
	font-family: var(--font-fira);
	font-size: 0.82rem;
	font-weight: 700;
	border: 1px solid var(--c-border);
	padding: 0.3rem 0.8rem;
	border-radius: 3px;
}
.mecon-single__tags a:hover {
	border-color: var(--c-accent-text);
	color: var(--c-accent-text);
}

.mecon-sidebar { min-width: 0; }
.mecon-widget { margin-bottom: 2rem; }
.mecon-widget-title {
	font-family: var(--font-fira);
	font-size: 1rem;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	border-bottom: 2px solid var(--c-accent);
	padding-bottom: 0.4rem;
	margin-bottom: 1rem;
}

/* ==========================================================================
   PÁGINA DE CATEGORIA OFICIAL (Fiel à Produção / Referência: Engenharia)
   ========================================================================== */

/* 1. Topo Escuro com Destaques */
.mecon-cat-hero-section {
	background-color: #1a1a1a;
	background-image: linear-gradient(rgba(18, 18, 18, 0.92), rgba(22, 22, 22, 0.97)), url('../images/home-hero-bg.jpg');
	background-size: cover;
	background-position: center top;
	background-repeat: no-repeat;
	color: #ffffff;
	padding-top: 1.8rem;
	padding-bottom: 2.8rem;
	border-bottom: 1px solid #282828;
}
@media (min-width: 960px) {
	.mecon-cat-hero-section {
		background-attachment: fixed;
	}
}

/* Breadcrumb da categoria */
.mecon-cat-breadcrumb {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 6px;
	font-family: var(--font-fira);
	font-size: 0.85rem;
	color: #999999;
	margin-bottom: 0.8rem;
}
.mecon-cat-breadcrumb a {
	color: #ffffff;
	font-weight: 500;
}
.mecon-cat-breadcrumb a:hover {
	color: var(--c-accent);
}
.mecon-cat-breadcrumb__sep {
	color: #666666;
	margin-inline: 2px;
}
.mecon-cat-breadcrumb__current {
	color: var(--c-accent);
	font-weight: 600;
}

/* Título da categoria */
.mecon-cat-title {
	font-family: var(--font-fira);
	font-size: 2.6rem;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 2px;
	text-align: center;
	color: #ffffff;
	margin: 0 0 1rem;
	line-height: 1.15;
}
@media (max-width: 768px) {
	.mecon-cat-title {
		font-size: 1.9rem;
	}
}

/* Subcategorias (Pills) */
.mecon-cat-subcats {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: 10px;
	margin-bottom: 1.5rem;
}
.mecon-cat-subcat-pill {
	display: inline-block;
	background-color: #000000;
	color: #ffffff;
	border: 1px solid #333333;
	padding: 0.5rem 1.15rem;
	font-family: var(--font-fira);
	font-size: 0.82rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	border-radius: 3px;
	transition: all 0.2s ease;
}
.mecon-cat-subcat-pill:hover {
	color: var(--c-accent);
	border-color: var(--c-accent);
	box-shadow: 0 0 12px rgba(0, 255, 0, 0.25);
}
.mecon-cat-subcat-pill.is-active {
	background-color: #006d20;
	color: var(--c-accent);
	border-color: var(--c-accent);
}

/* Linha verde neon horizontal centralizada (600px) */
.mecon-cat-divider-line {
	width: 600px;
	max-width: 85%;
	height: 4px;
	background-color: var(--c-accent);
	margin: 0 auto 1.8rem;
	border-radius: 2px;
	box-shadow: 0 0 8px rgba(0, 255, 0, 0.4);
}

/* Leaderboard banner centralizado */
.mecon-cat-leaderboard-ad {
	display: flex;
	justify-content: center;
	margin-bottom: 2rem;
}

/* Grid superior de 2 Colunas */
.mecon-cat-featured-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 2rem;
	align-items: start;
}
@media (min-width: 960px) {
	.mecon-cat-featured-grid {
		grid-template-columns: 2.15fr 1fr;
		gap: 2.5rem;
	}
}

.mecon-cat-featured-left,
.mecon-cat-featured-right {
	min-width: 0;
}

/* Tag verde neon */
.mecon-cat-tag-green {
	color: var(--c-accent);
	font-family: var(--font-fira);
	font-size: 0.8rem;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	display: inline-block;
	margin-bottom: 0.45rem;
}
.mecon-cat-tag-green:hover {
	color: #ffffff;
	text-decoration: underline;
}

/* Hero da Categoria */
.mecon-cat-hero-wrap {
	margin-bottom: 1.5rem;
}
.mecon-cat-hero-card {
	position: relative;
	display: block;
	aspect-ratio: 16 / 9;
	overflow: hidden;
	border-radius: 4px;
	background: #000000;
	border-bottom: 5px solid var(--c-accent);
}
.mecon-cat-hero-card__link {
	position: absolute;
	inset: 0;
	display: block;
}
.mecon-cat-hero-card__link img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 0.4s ease;
}
.mecon-cat-hero-card:hover .mecon-cat-hero-card__link img {
	transform: scale(1.03);
}
.mecon-cat-hero-card__overlay {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	padding: 3.5rem 1.8rem 1.4rem;
	background: linear-gradient(to top, rgba(0,0,0,0.92) 0%, rgba(0,0,0,0.6) 65%, transparent 100%);
	pointer-events: auto;
}
.mecon-cat-hero-card__title {
	font-family: var(--font-fira);
	font-size: 1.7rem;
	font-weight: 800;
	line-height: 1.2;
	color: #ffffff;
	margin: 0 0 0.5rem;
}
@media (min-width: 960px) {
	.mecon-cat-hero-card__title {
		font-size: 2.1rem;
	}
}
.mecon-cat-hero-card__title a:hover {
	color: var(--c-accent);
}
.mecon-cat-hero-card__meta {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	font-family: var(--font-fira);
	font-size: 0.76rem;
	color: rgba(255, 255, 255, 0.65);
	letter-spacing: 0.04em;
	text-transform: uppercase;
}
.mecon-cat-hero-card__author {
	font-weight: 600;
}
.mecon-cat-hero-card__sep {
	opacity: 0.5;
}

/* 2 Sub-destaques (Tiles) */
.mecon-cat-tiles-row {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 1.25rem;
}
@media (max-width: 640px) {
	.mecon-cat-tiles-row {
		grid-template-columns: 1fr;
	}
}
.mecon-cat-tile {
	background: #000000;
	border-bottom: 4px solid var(--c-accent);
	border-radius: 4px;
	overflow: hidden;
	display: flex;
	flex-direction: column;
}
.mecon-cat-tile__thumb {
	aspect-ratio: 16 / 9;
	overflow: hidden;
	background: #111111;
}
.mecon-cat-tile__thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.3s ease;
}
.mecon-cat-tile:hover .mecon-cat-tile__thumb img {
	transform: scale(1.05);
}
.mecon-cat-tile__body {
	padding: 1.1rem 1.25rem 1.35rem;
	flex: 1;
}
.mecon-cat-tile__title {
	font-size: 1.1rem;
	font-weight: 800;
	line-height: 1.25;
	color: #ffffff;
	margin: 0 0 0.5rem;
}
.mecon-cat-tile__title a:hover {
	color: var(--c-accent);
}
/* Coluna Direita (Ads + 3 Compactos) */
.mecon-cat-side-ad {
	display: flex;
	justify-content: center;
	margin-bottom: 1.25rem;
}
.mecon-cat-compact-list {
	display: flex;
	flex-direction: column;
	gap: 1.2rem;
	margin-bottom: 1.25rem;
}
.mecon-cat-compact-item {
	display: grid;
	grid-template-columns: 105px 1fr;
	gap: 12px;
	align-items: start;
	border-bottom: 1px solid #242424;
	padding-bottom: 1.1rem;
}
.mecon-cat-compact-item:last-child {
	border-bottom: none;
	padding-bottom: 0;
}
.mecon-cat-compact-item__thumb {
	aspect-ratio: 16 / 10;
	border-radius: 3px;
	overflow: hidden;
	background: #111111;
	display: block;
}
.mecon-cat-compact-item__thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.3s ease;
}
.mecon-cat-compact-item:hover .mecon-cat-compact-item__thumb img {
	transform: scale(1.05);
}
.mecon-cat-compact-item__info {
	min-width: 0;
}
.mecon-cat-compact-item__title {
	font-size: 0.95rem;
	font-weight: 700;
	line-height: 1.3;
	color: #ffffff;
	margin: 0;
}
.mecon-cat-compact-item__title a {
	color: #ffffff;
	transition: color 0.15s ease, box-shadow 0.15s ease;
}
.mecon-cat-compact-item:hover .mecon-cat-compact-item__title a {
	color: #ffffff;
	box-shadow: inset 0 -2px 0 0 var(--c-accent);
}

/* 2. Faixa Intermediária de Subcategorias */
.mecon-cat-subcats-mid {
	background: #ffffff;
	padding: 2rem 0 1rem;
	border-bottom: 1px solid #eeeeee;
}
.mecon-cat-subcats-mid .mecon-cat-subcat-pill {
	background: #000000;
	color: #ffffff;
	border: 1px solid #000000;
}
.mecon-cat-subcats-mid .mecon-cat-subcat-pill:hover {
	background: #000000;
	color: var(--c-accent);
	border-color: var(--c-accent);
}
.mecon-cat-subcats-mid .mecon-cat-subcat-pill.is-active {
	background: #006d20;
	color: var(--c-accent);
	border-color: var(--c-accent);
}

/* 3. Seção Principal: Grade de 3 Colunas */
.mecon-cat-main-section {
	background-color: #ffffff;
	padding: 2.5rem 0 4.5rem;
}
.mecon-cat-grid-3col {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 2rem;
	margin-bottom: 3.5rem;
}
@media (max-width: 960px) {
	.mecon-cat-grid-3col {
		grid-template-columns: repeat(2, 1fr);
		gap: 1.5rem;
	}
}
@media (max-width: 600px) {
	.mecon-cat-grid-3col {
		grid-template-columns: 1fr;
		gap: 1.8rem;
	}
}

/* Card Individual da Grade de 3 Colunas */
.mecon-cat-card {
	background: #ffffff;
	border-radius: 4px;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	border-bottom: 4px solid var(--c-accent);
	box-shadow: 0px 3px 16px 0px rgba(0, 0, 0, 0.14);
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}
.mecon-cat-card:hover {
	transform: translateY(-4px);
	box-shadow: 0px 6px 22px 0px rgba(0, 0, 0, 0.2);
}
.mecon-cat-card__thumb {
	aspect-ratio: 16 / 10;
	overflow: hidden;
	background: #f0f0f0;
	display: block;
}
.mecon-cat-card__thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 0.35s ease;
}
.mecon-cat-card:hover .mecon-cat-card__thumb img {
	transform: scale(1.04);
}
.mecon-cat-card__body {
	padding: 1.4rem 1.5rem 1.3rem;
	flex: 1;
	display: flex;
	flex-direction: column;
}
.mecon-cat-card__badge {
	align-self: flex-start;
	background-color: #006d20;
	color: var(--c-accent);
	font-family: var(--font-fira);
	font-size: 0.78rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	padding: 0.35rem 0.75rem;
	border-radius: 3px;
	margin-bottom: 0.85rem;
	line-height: 1.2;
	transition: background-color 0.15s ease, color 0.15s ease;
}
.mecon-cat-card__badge:hover {
	background-color: #005016;
	color: #ffffff;
}
.mecon-cat-card__title {
	font-family: var(--font-fira);
	font-size: 1.22rem;
	font-weight: 700;
	line-height: 1.28;
	color: #000000;
	margin: 0 0 1rem;
}
.mecon-cat-card__title a {
	color: #000000;
	transition: color 0.15s ease, box-shadow 0.15s ease;
}
.mecon-cat-card:hover .mecon-cat-card__title a {
	color: #000000;
	box-shadow: inset 0 -2px 0 0 var(--c-accent);
}
/* Carregamento infinito da grade de categoria */
.mecon-cat-infinite-scroll {
	margin-top: 2rem;
	text-align: center;
}
.mecon-cat-load-status {
	margin: 0;
	color: #006d20;
	font-family: var(--font-fira);
	font-size: 0.9rem;
	font-weight: 600;
}
.mecon-cat-load-retry {
	margin-top: 0.75rem;
	padding: 0.65rem 1rem;
	border: 0;
	border-radius: 3px;
	background: #000000;
	color: #ffffff;
	font-family: var(--font-fira);
	font-weight: 700;
	cursor: pointer;
}
.mecon-cat-load-retry:hover {
	background: var(--c-accent);
	color: #000000;
}
.mecon-cat-scroll-sentinel {
	height: 1px;
}

/* Estado Vazio */
.mecon-cat-empty {
	text-align: center;
	padding: 4rem 1rem;
	font-size: 1.1rem;
	color: var(--c-muted);
}
.mecon-cat-empty__btn {
	display: inline-block;
	margin-top: 1rem;
	background: #000000;
	color: var(--c-accent);
	padding: 0.75rem 1.6rem;
	font-family: var(--font-fira);
	font-weight: 700;
	border-radius: 4px;
}
.mecon-cat-empty__btn:hover {
	background: var(--c-accent);
	color: #000000;
}

/* ==========================================================================
   PÁGINA DE NOTÍCIA INDIVIDUAL (Single Post Oficial)
   Referência visual fiel: McLaren investe £ 500 milhões...
   ========================================================================== */

/* 1. Barra de Leitura Fixa no Topo */
.mecon-reading-progress {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 4px;
	z-index: 99999;
	background: transparent;
	pointer-events: none;
}
.mecon-reading-progress__fill {
	height: 100%;
	width: 0%;
	background-color: var(--c-accent);
	box-shadow: 0 0 10px rgba(0, 255, 0, 0.85);
	transition: width 0.1s ease-out;
}

/* 2. Hero Amplo do Post com Fundo Escuro e Imagem de Destaque */
.mecon-post-hero {
	position: relative;
	background-color: #0b0c0d;
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	color: #ffffff;
	padding: 0;
	border-bottom: none;
	overflow: visible;
}
.mecon-post-hero__inner {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0;
	align-items: stretch;
}
@media (min-width: 960px) {
	.mecon-post-hero__inner {
		grid-template-columns: 50% 50%;
		gap: 0;
		align-items: stretch;
	}
}

/* Coluna Esquerda: Imagem — sangra no topo e passa da base do hero */
.mecon-post-hero__media {
	min-width: 0;
	width: 100%;
	display: flex;
	align-items: stretch;
}
@media (min-width: 960px) {
	.mecon-post-hero__media {
		margin-bottom: -28px; /* sangra 28px abaixo do hero */
		z-index: 2;
		position: relative;
	}
}
.mecon-post-hero__thumb-wrap {
	position: relative;
	width: 100%;
	border-radius: 0;
	overflow: hidden;
	background: #000000;
	border-bottom: 4px solid var(--c-accent);
	box-shadow: 4px 0 24px rgba(0, 0, 0, 0.55);
	min-height: 320px;
}
@media (min-width: 960px) {
	.mecon-post-hero__thumb-wrap {
		min-height: 440px;
		max-height: none;
		aspect-ratio: unset;
	}
}
.mecon-post-hero__thumb-wrap img {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	object-fit: cover;
	object-position: center center;
	display: block;
	transition: transform 0.4s ease;
}
.mecon-post-hero__thumb-wrap:hover img {
	transform: scale(1.02);
}

/* Coluna Direita: Textos e Metadados */
.mecon-post-hero__info {
	min-width: 0;
	padding: 2.6rem 2rem 3rem 2.5rem;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
@media (max-width: 959px) {
	.mecon-post-hero__info {
		padding: 2rem 1.25rem 2.5rem;
	}
}
.mecon-post-hero__cat-wrap {
	margin-bottom: 0.75rem;
}
.mecon-post-hero__cat {
	display: inline-block;
	color: var(--c-accent);
	font-family: var(--font-fira);
	font-size: 0.82rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.12em;
	transition: color 0.15s ease;
	text-decoration: none;
}
.mecon-post-hero__cat:hover {
	color: #ffffff;
}

.mecon-post-hero__title {
	font-family: var(--font-fira);
	font-size: 2.05rem;
	font-weight: 800;
	line-height: 1.16;
	color: #ffffff;
	letter-spacing: -0.015em;
	margin: 0 0 1.15rem;
}
@media (min-width: 960px) {
	.mecon-post-hero__title {
		font-size: 2.45rem;
	}
}

.mecon-post-hero__subtitle {
	margin-bottom: 1.4rem;
	border-left: none;
	padding-left: 0;
}
.mecon-post-hero__subtitle p {
	font-family: var(--font-base);
	font-size: 1.05rem;
	font-style: italic;
	font-weight: 400;
	line-height: 1.48;
	color: #e8e8e8;
	margin: 0;
}

/* Metadados Empilhados em Linhas Verticais */
.mecon-post-hero__meta {
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
	font-family: var(--font-fira);
	font-size: 0.88rem;
	margin-bottom: 1.4rem;
}
.mecon-post-hero__author {
	display: flex;
	align-items: center;
	gap: 4px;
	color: var(--c-accent);
	font-size: 0.95rem;
	font-weight: 700;
}
.mecon-post-hero__by {
	color: var(--c-accent);
	font-weight: 700;
	text-transform: capitalize;
}
.mecon-post-hero__author-name {
	color: var(--c-accent);
	font-weight: 700;
}
.mecon-post-hero__date {
	color: #cccccc;
	font-size: 0.88rem;
	font-weight: 400;
}
.mecon-post-hero__reading-time {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	color: #ffffff;
	font-size: 0.88rem;
	font-weight: 600;
}
.mecon-post-hero__reading-time svg {
	stroke: var(--c-accent);
	flex-shrink: 0;
}

/* Barra de Compartilhamento Social (Quadrados Compactos) */
.mecon-share-bar {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	align-items: center;
}
.mecon-share-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	padding: 0;
	border-radius: 2px;
	border: none;
	cursor: pointer;
	color: #ffffff;
	text-decoration: none;
	transition: opacity 0.2s ease, transform 0.15s ease, filter 0.15s ease;
	flex-shrink: 0;
}
.mecon-share-btn:hover {
	opacity: 0.95;
	filter: brightness(1.18);
	transform: translateY(-2px);
	color: #ffffff;
}
.mecon-share-btn--fb {
	background-color: #4267b2;
}
.mecon-share-btn--in {
	background-color: #0077b5;
}
.mecon-share-btn--print {
	background-color: #36383d;
}
.mecon-share-btn--copy {
	background-color: #111213;
}
.mecon-share-btn--wa {
	background-color: #25d366;
}

/* 3. Layout de Conteúdo e Sidebar */
.mecon-post-layout {
	display: grid;
	grid-template-columns: 1fr;
	gap: 2.5rem;
	padding-block: 2.5rem 3.5rem;
}
@media (min-width: 960px) {
	.mecon-post-layout {
		grid-template-columns: 2.25fr 1fr;
		gap: 3.2rem;
		align-items: start;
		padding-top: 3.5rem; /* compensa a sangria de 28px da imagem + respiro */
	}
}

.mecon-post-article {
	min-width: 0;
}
.mecon-post-more-section {
	padding-top: 0;
}
.mecon-post-more-grid {
	margin-bottom: 1.5rem;
}

/* Tipografia Editorial do Conteúdo */
.mecon-post-content {
	font-size: 1.125rem;
	line-height: 1.85;
	color: #222222;
}
.mecon-post-content p {
	margin: 0 0 1.5rem;
}
.mecon-post-content h2,
.mecon-post-content h3,
.mecon-post-content h4 {
	font-family: var(--font-fira);
	font-weight: 800;
	color: #000000;
	margin: 2.2rem 0 1rem;
	line-height: 1.25;
}
.mecon-post-content h2 {
	font-size: 1.65rem;
	border-bottom: 2px solid var(--c-accent);
	padding-bottom: 0.35rem;
	display: inline-block;
}
.mecon-post-content h3 {
	font-size: 1.35rem;
}
.mecon-post-content blockquote {
	margin: 1.8rem 0;
	padding: 1.2rem 1.8rem;
	background: #f8f9fa;
	border-left: 4px solid var(--c-accent);
	font-style: italic;
	font-size: 1.15rem;
	color: #333333;
	border-radius: 0 4px 4px 0;
}
.mecon-post-content ul,
.mecon-post-content ol {
	margin: 1rem 0 1.5rem;
	padding-left: 1.6rem;
}
.mecon-post-content li {
	margin-bottom: 0.6rem;
}
.mecon-post-content strong {
	color: #000000;
	font-weight: 700;
}
.mecon-post-content img {
	border-radius: 4px;
	margin-block: 1.5rem;
	width: 100%;
	height: auto;
	box-shadow: 0 2px 14px rgba(0, 0, 0, 0.08);
}
.mecon-post-content .wp-block-gallery,
.mecon-post-content .gallery {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1rem;
	margin: 2rem 0;
}
.mecon-post-content .wp-block-gallery.columns-1,
.mecon-post-content .gallery.gallery-columns-1 {
	grid-template-columns: minmax(0, 1fr);
}
.mecon-post-content .wp-block-gallery.columns-2,
.mecon-post-content .gallery.gallery-columns-2 {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}
.mecon-post-content .wp-block-gallery.columns-4,
.mecon-post-content .gallery.gallery-columns-4 {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}
.mecon-post-content .wp-block-gallery.columns-5,
.mecon-post-content .gallery.gallery-columns-5 {
	grid-template-columns: repeat(5, minmax(0, 1fr));
}
.mecon-post-content .wp-block-gallery.columns-6,
.mecon-post-content .gallery.gallery-columns-6 {
	grid-template-columns: repeat(6, minmax(0, 1fr));
}
.mecon-post-content .wp-block-gallery.columns-7,
.mecon-post-content .gallery.gallery-columns-7 {
	grid-template-columns: repeat(7, minmax(0, 1fr));
}
.mecon-post-content .wp-block-gallery.columns-8,
.mecon-post-content .gallery.gallery-columns-8 {
	grid-template-columns: repeat(8, minmax(0, 1fr));
}
.mecon-post-content .wp-block-gallery > .wp-block-image,
.mecon-post-content .gallery .gallery-item {
	min-width: 0;
	margin: 0;
}
.mecon-post-content .wp-block-gallery .wp-block-image img,
.mecon-post-content .gallery .gallery-item img {
	display: block;
	width: 100%;
	height: auto;
	margin: 0;
	box-shadow: none;
}
.mecon-post-content .wp-block-gallery.is-cropped .wp-block-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.mecon-post-content .gallery .gallery-icon {
	overflow: hidden;
}
.mecon-post-content .wp-block-gallery figcaption,
.mecon-post-content .gallery .gallery-caption {
	margin: 0.45rem 0 0;
	font-size: 0.85rem;
	line-height: 1.45;
	color: #555555;
	text-align: center;
}
@media (max-width: 767px) {
	.mecon-post-content .wp-block-gallery:not(.columns-1),
	.mecon-post-content .gallery:not(.gallery-columns-1) {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 0.65rem;
	}
}
@media (max-width: 420px) {
	.mecon-post-content .wp-block-gallery:not(.columns-1),
	.mecon-post-content .gallery:not(.gallery-columns-1) {
		grid-template-columns: minmax(0, 1fr);
	}
}
.mecon-post-content .mecon-slideshow {
	display: block;
	padding: 0.75rem;
	background: #111111;
	margin: 2rem 0;
}
.mecon-post-content .mecon-slideshow__source {
	display: none !important;
}
.mecon-post-content .mecon-slideshow__stage {
	background: #111111;
}
.mecon-post-content .mecon-slideshow__toolbar {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 1rem;
	min-height: 2.75rem;
	padding: 0 0.4rem;
	color: #ffffff;
	font-family: var(--font-fira);
	font-size: 0.85rem;
	font-weight: 700;
}
.mecon-post-content .mecon-slideshow__controls {
	display: flex;
	align-items: center;
	gap: 0.25rem;
}
.mecon-post-content .mecon-slideshow__arrow {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2rem;
	height: 2rem;
	padding: 0;
	border: 0;
	background: transparent;
	color: #ffffff;
	font-size: 2rem;
	line-height: 1;
	cursor: pointer;
}
.mecon-post-content .mecon-slideshow__arrow:hover,
.mecon-post-content .mecon-slideshow__arrow:focus-visible {
	color: var(--c-accent);
}
.mecon-post-content .mecon-slideshow__frame {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	min-height: 220px;
	margin: 0;
	padding: 0 5%;
	border-bottom: 4px solid var(--c-accent);
	background: #222222;
}
.mecon-post-content .mecon-slideshow__image {
	display: block;
	width: 100%;
	max-height: min(65vh, 560px);
	margin: 0;
	object-fit: contain;
	border-radius: 0;
	box-shadow: none;
	cursor: zoom-in;
}
.mecon-post-content .mecon-slideshow__image:focus-visible {
	outline: 3px solid var(--c-accent);
	outline-offset: 3px;
}
.mecon-post-content .mecon-slideshow__caption {
	width: 100%;
	padding: 0.7rem 0.25rem;
	color: #ffffff;
	font-size: 0.9rem;
	line-height: 1.45;
	text-align: left;
}
.mecon-post-content .mecon-slideshow__thumbnails {
	display: flex;
	justify-content: center;
	gap: 0.6rem;
	overflow-x: auto;
	padding: 0.7rem 0 0.1rem;
	scrollbar-width: thin;
}
.mecon-post-content .mecon-slideshow__thumbnail {
	flex: 0 0 88px;
	width: 88px;
	height: 58px;
	padding: 2px;
	overflow: hidden;
	border: 2px solid #777777;
	background: #222222;
	cursor: pointer;
}
.mecon-post-content .mecon-slideshow__thumbnail.is-active {
	border-color: var(--c-accent);
}
.mecon-post-content .mecon-slideshow__thumbnail:focus-visible {
	outline: 2px solid #ffffff;
	outline-offset: 2px;
}
.mecon-post-content .mecon-slideshow__thumbnail img {
	display: block;
	width: 100%;
	height: 100%;
	margin: 0;
	object-fit: cover;
	border-radius: 0;
	box-shadow: none;
}
body.mecon-slideshow-lightbox-open {
	overflow: hidden;
}
.mecon-slideshow-lightbox {
	position: fixed;
	inset: 0;
	z-index: 10000;
	display: none;
	align-items: center;
	justify-content: center;
	padding: 3.5rem 5rem;
	background: rgba(0, 0, 0, 0.78);
}
.mecon-slideshow-lightbox.is-open {
	display: flex;
}
.mecon-slideshow-lightbox__image {
	display: block;
	max-width: min(100%, 1200px);
	max-height: calc(100vh - 7rem);
	width: auto;
	height: auto;
	margin: 0;
	object-fit: contain;
	box-shadow: 0 8px 32px rgba(0, 0, 0, 0.45);
}
.mecon-slideshow-lightbox__close,
.mecon-slideshow-lightbox__arrow {
	position: fixed;
	z-index: 1;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 0;
	background: transparent;
	color: #ffffff;
	cursor: pointer;
}
.mecon-slideshow-lightbox__close {
	top: 1rem;
	right: 1.5rem;
	width: 2.75rem;
	height: 2.75rem;
	font-size: 2.25rem;
	line-height: 1;
}
.mecon-slideshow-lightbox__arrow {
	top: 50%;
	width: 3.5rem;
	height: 4.5rem;
	transform: translateY(-50%);
	font-size: 3.5rem;
	line-height: 1;
}
.mecon-slideshow-lightbox__arrow--previous {
	left: 1rem;
}
.mecon-slideshow-lightbox__arrow--next {
	right: 1rem;
}
.mecon-slideshow-lightbox__close:hover,
.mecon-slideshow-lightbox__arrow:hover,
.mecon-slideshow-lightbox__close:focus-visible,
.mecon-slideshow-lightbox__arrow:focus-visible {
	color: var(--c-accent);
}
.mecon-slideshow-lightbox__counter {
	position: fixed;
	right: 2rem;
	bottom: 1.5rem;
	color: #ffffff;
	font-family: var(--font-fira);
	font-size: 0.85rem;
	font-weight: 700;
}
.mecon-slideshow-lightbox__caption {
	position: fixed;
	right: 5rem;
	bottom: 1.5rem;
	left: 5rem;
	margin: 0;
	color: #ffffff;
	font-size: 0.9rem;
	text-align: center;
	pointer-events: none;
}
@media (max-width: 600px) {
	.mecon-post-content .mecon-slideshow {
		padding: 0.4rem;
	}
	.mecon-post-content .mecon-slideshow__frame {
		min-height: 160px;
		padding: 0 0.5rem;
	}
	.mecon-post-content .mecon-slideshow__image {
		max-height: 55vh;
	}
	.mecon-post-content .mecon-slideshow__thumbnails {
		justify-content: flex-start;
	}
	.mecon-slideshow-lightbox {
		padding: 3.5rem 0.75rem;
	}
	.mecon-slideshow-lightbox__image {
		max-width: 100%;
		max-height: calc(100vh - 7rem);
	}
	.mecon-slideshow-lightbox__arrow {
		width: 2.5rem;
		font-size: 2.75rem;
	}
	.mecon-slideshow-lightbox__arrow--previous {
		left: 0;
	}
	.mecon-slideshow-lightbox__arrow--next {
		right: 0;
	}
	.mecon-slideshow-lightbox__caption {
		right: 3.5rem;
		bottom: 1rem;
		left: 0.75rem;
		text-align: left;
	}
	.mecon-slideshow-lightbox__counter {
		right: 0.75rem;
		bottom: 1rem;
	}
}
.mecon-post-content a {
	color: var(--c-accent-text);
	text-decoration: underline;
	font-weight: 600;
}
.mecon-post-content a:hover {
	color: #000000;
}

/* Imagem Inferior Destaque */
.mecon-post-bottom-image {
	margin: 2.5rem 0 2rem;
	border-radius: 4px;
	overflow: hidden;
	border-bottom: 5px solid var(--c-accent);
	box-shadow: 0 6px 24px rgba(0, 0, 0, 0.15);
}
.mecon-post-bottom-image img {
	width: 100%;
	height: auto;
	display: block;
}

/* Barra de Compartilhamento Inferior */
.mecon-post-share-bottom-wrap {
	padding-block: 1.4rem;
	border-top: 1px solid #eeeeee;
	border-bottom: 1px solid #eeeeee;
	margin-bottom: 2rem;
	display: flex;
	justify-content: center;
}

/* Nuvem de Tags Oficiais */
.mecon-post-tags {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	margin-bottom: 2.5rem;
	padding-bottom: 1.5rem;
	border-bottom: 4px solid #000000;
}
.mecon-post-tags__label {
	background-color: #222222;
	color: var(--c-accent);
	font-family: var(--font-fira);
	font-size: 0.75rem;
	font-weight: 800;
	letter-spacing: 0.1em;
	padding: 0.45rem 0.85rem;
	border-radius: 2px;
}
.mecon-post-tag-item {
	background-color: rgba(204, 204, 204, 0.18);
	color: #111111;
	font-family: var(--font-fira);
	font-size: 0.8rem;
	font-weight: 600;
	text-transform: uppercase;
	padding: 0.45rem 0.85rem;
	border-radius: 2px;
	transition: all 0.2s ease;
	text-decoration: none;
}
.mecon-post-tag-item:hover {
	background-color: var(--c-accent);
	color: #000000;
}

/* Banner Intermediário */
.mecon-post-ad-banner {
	display: flex;
	justify-content: center;
	margin-block: 2rem 2.5rem;
}

/* Matérias Relacionadas */
.mecon-related-section {
	margin-top: 2rem;
	margin-bottom: 3.5rem;
}
.mecon-section-head {
	display: flex;
	align-items: center;
	gap: 1.2rem;
	margin-bottom: 1.8rem;
}
.mecon-section-title {
	font-family: var(--font-fira);
	font-size: 1.15rem;
	font-weight: 900;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: #000000;
	white-space: nowrap;
	margin: 0;
}
.mecon-section-line {
	flex: 1;
	height: 3px;
	background-color: var(--c-accent);
	border-radius: 2px;
}

.mecon-related-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.2rem;
}
@media (min-width: 640px) {
	.mecon-related-grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 1.25rem 2rem;
	}
}

.mecon-related-item {
	display: grid;
	grid-template-columns: 100px 1fr;
	gap: 14px;
	align-items: start;
	padding-bottom: 1.1rem;
	border-bottom: 1px dashed #e2e2e2;
}
.mecon-related-item__thumb {
	aspect-ratio: 16 / 10;
	border-radius: 3px;
	overflow: hidden;
	background: #111111;
	display: block;
}
.mecon-related-item__thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.3s ease;
}
.mecon-related-item:hover .mecon-related-item__thumb img {
	transform: scale(1.05);
}
.mecon-related-item__info {
	min-width: 0;
}
.mecon-related-item__cat {
	background: rgba(0, 0, 0, 0.7);
	color: var(--c-accent);
	font-family: var(--font-fira);
	font-size: 0.72rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	padding: 2px 7px;
	border-radius: 2px;
	display: inline-block;
	margin-bottom: 5px;
	text-decoration: none;
}
.mecon-related-item__cat:hover {
	background: #000000;
	color: #ffffff;
}
.mecon-related-item__title {
	font-family: var(--font-fira);
	font-size: 0.95rem;
	font-weight: 700;
	line-height: 1.28;
	margin: 0;
	color: #000000;
}
.mecon-related-item__title a {
	color: #000000;
	text-decoration: none;
	transition: color 0.15s ease, box-shadow 0.15s ease;
}
.mecon-related-item:hover .mecon-related-item__title a {
	color: #000000;
	box-shadow: inset 0 -2px 0 0 var(--c-accent);
}

/* Sidebar do Post Individual */
.mecon-post-sidebar {
	position: sticky;
	top: 1.5rem;
	display: flex;
	flex-direction: column;
	gap: 2rem;
	min-width: 0;
}
.mecon-side-widget__head {
	display: flex;
	align-items: center;
	gap: 1rem;
	margin-bottom: 1.2rem;
	border-bottom: 2px solid var(--c-accent);
	padding-bottom: 0.4rem;
}
.mecon-side-widget__title {
	font-family: var(--font-fira);
	font-size: 1.05rem;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: #000000;
	margin: 0;
}
.mecon-side-compact-list {
	display: flex;
	flex-direction: column;
	gap: 1.1rem;
}
.mecon-side-compact-list .mecon-cat-compact-item,
.mecon-post-sidebar .mecon-cat-compact-item {
	border-bottom: 1px solid var(--c-border);
	padding-bottom: 1.1rem;
}
.mecon-side-compact-list .mecon-cat-compact-item:last-child,
.mecon-post-sidebar .mecon-cat-compact-item:last-child {
	border-bottom: none;
	padding-bottom: 0;
}
.mecon-side-compact-list .mecon-cat-compact-item__thumb,
.mecon-post-sidebar .mecon-cat-compact-item__thumb {
	background: #f0f0f0;
}
.mecon-side-compact-list .mecon-cat-compact-item__title,
.mecon-post-sidebar .mecon-cat-compact-item__title {
	font-family: var(--font-fira);
	font-size: 0.95rem;
	font-weight: 700;
	line-height: 1.35;
	color: #111111;
	margin: 0;
}
.mecon-side-compact-list .mecon-cat-compact-item__title a,
.mecon-post-sidebar .mecon-cat-compact-item__title a {
	color: #111111;
	text-decoration: none;
	transition: color 0.15s ease, box-shadow 0.15s ease;
}
.mecon-side-compact-list .mecon-cat-compact-item:hover .mecon-cat-compact-item__title a,
.mecon-post-sidebar .mecon-cat-compact-item:hover .mecon-cat-compact-item__title a {
	color: #111111;
	box-shadow: inset 0 -2px 0 0 var(--c-accent);
}
.mecon-side-compact-list .mecon-cat-tag-green:hover,
.mecon-post-sidebar .mecon-cat-tag-green:hover {
	color: #111111;
}

/* 4. Seções Inferiores da Página (Últimas Notícias e Veja Também) */
.mecon-post-bottom-section {
	background-color: #ffffff;
	padding: 2.8rem 0 3.2rem;
	border-top: 1px solid #eeeeee;
}
.mecon-post-bottom-section--alt {
	background-color: #fbfbfb;
	border-top: none;
}
.mecon-bottom-grid-4col {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 1.5rem;
}
@media (max-width: 1024px) {
	.mecon-bottom-grid-4col {
		grid-template-columns: repeat(2, 1fr);
	}
}
@media (max-width: 580px) {
	.mecon-bottom-grid-4col {
		grid-template-columns: 1fr;
		gap: 1.8rem;
	}
}

.mecon-bottom-card {
	background: #ffffff;
	border-radius: 4px;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	border-bottom: 4px solid var(--c-accent);
	box-shadow: 0 3px 14px rgba(0, 0, 0, 0.08);
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}
.mecon-bottom-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 6px 20px rgba(0, 0, 0, 0.14);
}
.mecon-bottom-card__thumb {
	aspect-ratio: 16 / 10;
	overflow: hidden;
	background: #eeeeee;
	display: block;
}
.mecon-bottom-card__thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 0.35s ease;
}
.mecon-bottom-card:hover .mecon-bottom-card__thumb img {
	transform: scale(1.04);
}
.mecon-bottom-card__body {
	padding: 1.1rem 1.25rem;
	flex: 1;
	display: flex;
	flex-direction: column;
}
.mecon-bottom-card__cat {
	color: var(--c-accent-text);
	font-family: var(--font-fira);
	font-size: 0.75rem;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	margin-bottom: 0.4rem;
	text-decoration: none;
}
.mecon-bottom-card__cat:hover {
	color: #000000;
}
.mecon-bottom-card__title {
	font-family: var(--font-fira);
	font-size: 1.05rem;
	font-weight: 700;
	line-height: 1.28;
	color: #000000;
	margin: 0 0 0.8rem;
}
.mecon-bottom-card__title a {
	color: #000000;
	text-decoration: none;
	transition: color 0.15s ease, box-shadow 0.15s ease;
}
.mecon-bottom-card:hover .mecon-bottom-card__title a {
	color: #000000;
	box-shadow: inset 0 -2px 0 0 var(--c-accent);
}
.mecon-bottom-card__date {
	margin-top: auto;
	font-family: var(--font-fira);
	font-size: 0.75rem;
	color: #006d20;
	font-weight: 600;
	text-transform: uppercase;
}

.mecon-post-mid-banner {
	display: flex;
	justify-content: center;
	margin-block: 1rem 2rem;
}

/* ==========================================================================
   DESKTOP MEDIA QUERIES (960px+)
   ========================================================================== */
@media (min-width: 960px) {
	.mecon-home-top {
		grid-template-columns: 2.15fr 1fr;
		gap: 2.5rem;
		align-items: start;
	}

	.mecon-card--hero .mecon-card__title {
		font-size: 2.3rem;
	}
}

@media (min-width: 1200px) {
	.mecon-menu-toggle { display: none; }
	.mecon-nav { display: block; width: auto; }
	.mecon-nav__list {
		flex-direction: row;
		align-items: center;
	}
	.mecon-nav__list > li > a {
		border-bottom: none;
		padding: 0.85rem 0.85rem;
	}
	.mecon-nav__list li:hover > .sub-menu,
	.mecon-nav__list li.mecon-submenu-open > .sub-menu {
		display: block;
		position: absolute;
		top: 100%;
		left: 0;
	}
}

@media (max-width: 1199px) {
	.mecon-nav__list li.mecon-submenu-open > .sub-menu {
		display: block;
		position: static;
	}
}

@media (min-width: 960px) {
	.mecon-topbar__left {
		order: 2;
		margin-left: auto;
	}

	.mecon-topbar__right {
		order: 1;
		margin-left: 0;
	}

	.mecon-logo {
		margin-left: clamp(5rem, 13vw, 10rem);
	}

	.mecon-header {
		background: linear-gradient(
			to bottom,
			#0c0c0c 0%,
			#292929 22%,
			#777777 52%,
			#bdbdbd 78%,
			#f3f3f3 100%
		);
		color: #111111;
	}

	.mecon-nav-bar {
		background: transparent;
		border-top: 0;
		border-bottom: 0;
	}

	.mecon-nav__list > li > a,
	.mecon-search-toggle {
		color: #111111;
	}
}

@media (max-width: 959px) {
	.mecon-nav__list > li > a,
	.mecon-search-toggle {
		color: #ffffff;
	}
}

@media (prefers-reduced-motion: reduce) {
	* { transition: none !important; animation: none !important; }
}

/* Mobile header and lead story, following the compact production layout. */
@media (max-width: 767px) {
	.mecon-topbar,
	.mecon-header__ad {
		display: none;
	}

	.mecon-header {
		position: relative;
	}

	.mecon-header__main {
		position: absolute;
		inset: 0 0 auto;
		height: 66px;
		padding: 0;
		z-index: 102;
		pointer-events: none;
	}

	.mecon-logo {
		position: fixed;
		top: 2px;
		left: 50%;
		height: 62px;
		margin: 0;
		transform: translateX(-50%);
		pointer-events: auto;
	}

	.mecon-logo__img {
		width: 126px;
		max-width: 126px;
		max-height: 58px;
		object-fit: contain;
	}

	.mecon-nav-bar {
		min-height: 66px;
	}

	.mecon-nav-bar__inner {
		position: relative;
		display: flex;
		min-height: 66px;
		align-items: center;
		justify-content: space-between;
	}

	.mecon-menu-toggle {
		position: relative;
		z-index: 103;
		min-width: 44px;
		min-height: 44px;
		margin-left: -0.6rem;
		justify-content: center;
	}

	.mecon-nav {
		position: absolute;
		top: 100%;
		right: 0;
		left: 0;
		z-index: 105;
		width: 100%;
		max-height: calc(100vh - 66px);
		overflow-y: auto;
		background: #080808;
	}

	.mecon-nav.is-open {
		display: block;
	}

	.mecon-nav__list {
		flex-direction: column;
	}

	.mecon-nav__list > li > a {
		padding: 0.8rem 1rem;
	}

	.mecon-nav__list li.mecon-submenu-open > .sub-menu {
		position: static;
		display: block;
		min-width: 0;
		border-top: 0;
		border-right: 0;
		border-bottom: 0;
		border-left: 2px solid var(--c-accent);
		margin: 0 1rem 0.5rem;
		padding: 0;
		box-shadow: none;
	}

	.mecon-nav-bar__tools {
		position: relative;
		z-index: 103;
		margin-right: -0.6rem;
		padding-left: 0;
	}

	.mecon-search-toggle {
		min-width: 44px;
		min-height: 44px;
		justify-content: center;
	}

	.mecon-search-bar {
		position: relative;
		z-index: 106;
	}

	.mecon-home-dark {
		padding-top: 1.25rem;
		padding-bottom: 2rem;
		background-attachment: scroll;
	}

	.mecon-home-top {
		gap: 1.5rem;
	}

	.mecon-card--hero {
		box-shadow: 0 8px 20px rgba(0, 0, 0, 0.28);
	}

	.mecon-card--hero .mecon-card__overlay-body {
		padding: 4rem 1rem 1.25rem;
	}

	.mecon-card--hero .mecon-card__title {
		font-size: clamp(1.35rem, 6vw, 1.75rem);
		line-height: 1.18;
	}

	.mecon-card--hero .mecon-pill {
		font-size: 0.8rem;
	}

	.mecon-home-content {
		padding-top: 1.5rem;
	}

	.mecon-section {
		margin-bottom: 2rem;
	}

	.mecon-section__head {
		gap: 0.55rem;
		margin-bottom: 0.9rem;
	}

	.mecon-section__title {
		font-size: 1.05rem;
	}

	.mecon-grid--card-gray,
	.mecon-grid--card-dark,
	.mecon-grid--media,
	.mecon-grid--card-four {
		gap: 1rem;
	}

	.mecon-grid--card-gray > .mecon-card,
	.mecon-grid--card-dark > .mecon-card,
	.mecon-grid--media > .mecon-card,
	.mecon-grid--card-four > .mecon-card {
		min-width: 0;
	}

	.mecon-section .mecon-grid > .mecon-card {
		flex: 0 0 100% !important;
		max-width: 100% !important;
	}

	.mecon-post-hero {
		padding-top: 1.5rem;
		padding-bottom: 1.5rem;
	}

	.mecon-post-hero__title {
		font-size: clamp(1.7rem, 7vw, 2.2rem);
	}

	.mecon-post-layout,
	.mecon-layout {
		gap: 1.5rem;
		padding-block: 1.5rem;
	}

	.mecon-post-sidebar {
		position: static;
	}
}

@media (max-width: 480px) {
	.mecon-wrap {
		padding-right: 1rem;
		padding-left: 1rem;
	}

	.mecon-card--hero {
		aspect-ratio: 4 / 5;
	}

	.mecon-home-dark {
		padding-top: 1rem;
	}

	.mecon-hero-wrapper {
		margin-bottom: 1rem;
	}

	.mecon-card--hero .mecon-card__overlay-body {
		padding-right: 0.9rem;
		padding-left: 0.9rem;
	}

	.mecon-card--hero .mecon-card__title {
		font-size: 1.4rem;
	}

	.mecon-grid--three-ads {
		gap: 0.85rem !important;
	}
}

/* ==========================================================================
   PLACEHOLDER DE ANÚNCIO (visível apenas para administradores logados)
   Indica visualmente onde configurar os slots em Personalizar → Publicidade.
   ========================================================================== */
.mecon-ad-slot__placeholder-admin {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 0.25rem;
	width: 100%;
	min-height: 90px;
	background: repeating-linear-gradient(
		-45deg,
		#f0f0f0,
		#f0f0f0 8px,
		#fafafa 8px,
		#fafafa 16px
	);
	border: 2px dashed #ccc;
	border-radius: 4px;
	color: #888;
	font-size: 0.78rem;
	text-align: center;
	padding: 0.75rem 1rem;
}
.mecon-ad-slot__placeholder-admin span { font-size: 1.5rem; }
.mecon-ad-slot__placeholder-admin p   { margin: 0; line-height: 1.4; }
.mecon-ad-slot__placeholder-admin strong { color: #1a73e8; }

@media (min-width: 768px) and (max-width: 1199px) {
	.mecon-nav-bar__inner {
		position: relative;
	}

	.mecon-nav.is-open {
		position: absolute;
		top: 100%;
		right: 0;
		left: 0;
		z-index: 105;
		width: 100%;
		max-height: calc(100vh - 66px);
		overflow-y: auto;
		background: #080808;
	}

	.mecon-nav__list li.mecon-submenu-open > .sub-menu {
		position: static;
		display: block;
		min-width: 0;
		border: 0;
		border-left: 2px solid var(--c-accent);
		margin: 0 1rem 0.5rem;
		padding: 0;
		box-shadow: none;
	}
}
