/**
 * O que é só do HUB de /eventos. O resto vem de mg-hub.css (a casca da /turismo/ e da /imoveis).
 *
 * Desenho dos mockups `Pagina de enventos.jpg` e `Pagina de enventos sem eventos.jpg`
 * (dono, 21/09/2026). Cores, Inter e container são os do manual da marca, pela casca.
 *
 * @author Valoar
 * @since  0.9.0 - 2026-09-21
 */

.agw-hub-sr {
	position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0;
	overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}

/* A migalha desta tela é a branca sobre a foto; a do tema ficaria repetida logo acima. */
body:has(.agw-hub-migalha) .gcep-migalha { display: none; }

/* ================= 1. HERÓI ================= */
.agw-hub-migalha { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; font-size: 13px; font-weight: 600; color: rgba(255, 255, 255, .82); }
.mg-hub .agw-hub-migalha a { color: rgba(255, 255, 255, .82); text-decoration: none; }
.mg-hub .agw-hub-migalha a:hover { color: #fff; text-decoration: underline; text-underline-offset: 3px; }
.agw-hub-migalha [aria-current] { color: #fff; }

/* Quatro indicadores: dois por linha no celular, quatro no desktop. */
.agw-hub-hero__destaques { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 14px; }
@media (min-width: 640px) { .agw-hub-hero__destaques { max-width: 680px; gap: 16px 18px; } }
@media (min-width: 1024px) { .agw-hub-hero__destaques { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; max-width: 1000px; } }

/* ================= 2. CATEGORIAS ================= */
.agw-hub-secao--cat { padding-bottom: 8px; }
.agw-hub-cats { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; padding: 0; list-style: none; }
@media (min-width: 620px) { .agw-hub-cats { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
/*
 * Oito por linha quando cabem; com nove ou mais, quebra sozinho em vez de espremer o nome.
 *
 * `auto-fill` e não `auto-fit`: desde 21/09/2026 a lista só traz categoria COM evento em cartaz, e
 * com duas o `auto-fit` derrubava as colunas vazias e esticava cada cartão até meia tela. O
 * `auto-fill` guarda as colunas, e duas categorias ficam do mesmo tamanho de oito.
 */
@media (min-width: 1100px) { .agw-hub-cats { grid-template-columns: repeat(auto-fill, minmax(126px, 1fr)); gap: 14px; } }
/* Pelo mesmo motivo, abaixo de 1100px as quatro colunas ficam fixas mesmo com menos cartões. */

.agw-hub-cat { border-radius: 14px; transition: transform .18s, box-shadow .18s; }
.agw-hub-cat:hover { transform: translateY(-3px); box-shadow: 0 10px 22px rgba(11, 58, 37, .1); }
.mg-hub .agw-hub-cat a {
	display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 12px; height: 100%;
	padding: 22px 12px; text-align: center; text-decoration: none; color: var(--hub-marinho);
}
.agw-hub-cat__ico { display: grid; place-items: center; width: 44px; height: 44px; }
.agw-hub-cat__ico svg { width: 32px; height: 32px; stroke-width: 1.7; }
.agw-hub-cat__nome { font-size: 14px; font-weight: 800; line-height: 1.25; }
/* Fundo pastel e ícone na cor, como no mockup — a paleta é a da marca. */
.agw-hub-cat--roxo { background: #efeafd; } .agw-hub-cat--roxo .agw-hub-cat__ico { color: #6d4bd8; }
.agw-hub-cat--laranja { background: #fff1e5; } .agw-hub-cat--laranja .agw-hub-cat__ico { color: #e56d00; }
.agw-hub-cat--verde { background: #e5f6ee; } .agw-hub-cat--verde .agw-hub-cat__ico { color: #158a58; }
.agw-hub-cat--azul { background: #e8f3ec; } .agw-hub-cat--azul .agw-hub-cat__ico { color: #0f5132; }
.agw-hub-cat--vinho { background: #fbeaf1; } .agw-hub-cat--vinho .agw-hub-cat__ico { color: #8c2f52; }
.agw-hub-cat--cinza { background: #eceff4; } .agw-hub-cat--cinza .agw-hub-cat__ico { color: #4a5f7e; }

/* ================= 3. EVENTOS EM DESTAQUE ================= */
.agw-hub-dests { display: grid; grid-template-columns: minmax(0, 1fr); gap: 18px; padding: 0; list-style: none; }
@media (min-width: 720px) { .agw-hub-dests { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1080px) { .agw-hub-dests { grid-template-columns: repeat(3, minmax(0, 1fr)); } }

.agw-hub-dest {
	position: relative; display: flex; flex-direction: column; height: 100%; overflow: hidden;
	border: 1px solid var(--hub-borda); border-radius: var(--hub-raio); background: #fff; box-shadow: var(--hub-sombra);
	transition: transform .18s, box-shadow .18s;
}
.agw-hub-dest:hover { transform: translateY(-3px); box-shadow: 0 12px 26px rgba(11, 58, 37, .1); }
.agw-hub-dest__foto { position: relative; aspect-ratio: 16 / 10; overflow: hidden; background: #e2ddd2; }
.agw-hub-dest__foto img { width: 100%; height: 100%; object-fit: cover; transition: transform .45s ease; }
.agw-hub-dest:hover .agw-hub-dest__foto img { transform: scale(1.05); }
.agw-hub-dest__semfoto { position: absolute; inset: 0; display: grid; place-items: center; background: linear-gradient(140deg, #22a06b 0%, #0b3a25 100%); color: #fff; }
.agw-hub-dest__semfoto svg { width: 52px; height: 52px; opacity: .45; }

/* O selo de data: bloco branco no canto, número grande e mês miúdo. */
.agw-hub-data {
	position: absolute; left: 12px; top: 12px; z-index: 2; display: grid; place-items: center; align-content: center;
	min-width: 58px; padding: 7px 10px; border-radius: 12px; background: #fff; box-shadow: 0 4px 14px rgba(11, 58, 37, .22);
	text-align: center; line-height: 1;
}
.agw-hub-data strong { font-size: 19px; font-weight: 800; letter-spacing: -.02em; color: #e11d48; }
.agw-hub-data span { margin-top: 3px; font-size: 11px; font-weight: 800; letter-spacing: .08em; color: #e11d48; }
.agw-hub-dest__salvar { position: absolute; right: 12px; top: 12px; z-index: 2; }
.agw-hub-dest__salvar .mg-salvar { width: 34px; height: 34px; border-radius: 99px; background: rgba(255, 255, 255, .94); box-shadow: 0 2px 8px rgba(11, 58, 37, .22); }
.agw-hub-badge {
	position: absolute; left: 12px; bottom: 12px; z-index: 2; padding: 5px 11px; border-radius: 7px;
	background: var(--hub-marinho); color: #fff; font-size: 11px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase;
}

.agw-hub-dest__corpo { display: flex; flex-direction: column; flex: 1; gap: 10px; padding: 16px 16px 18px; }
.agw-hub-dest__titulo { font-size: 17px; font-weight: 800; line-height: 1.25; letter-spacing: -.01em; }
.mg-hub .agw-hub-dest__titulo a { color: var(--hub-marinho); text-decoration: none; }
.agw-hub-dest__titulo a::after { content: ""; position: absolute; inset: 0; z-index: 1; }
.agw-hub-dest:hover .agw-hub-dest__titulo a { color: var(--hub-azul); }
.agw-hub-dest__dados { display: grid; gap: 7px; padding: 0; list-style: none; }
.agw-hub-dest__dados li { display: flex; align-items: center; gap: 8px; font-size: 13.5px; line-height: 1.35; color: var(--hub-texto-2); }
.agw-hub-dest__dados svg { width: 16px; height: 16px; flex: none; color: var(--hub-azul); }
.mg-hub .agw-hub-dest__btn { position: relative; z-index: 2; margin-top: auto; align-self: flex-start; min-height: 42px; }

/* ================= 4. PRÓXIMOS + CALENDÁRIO ================= */
.agw-hub-duo { display: grid; gap: 22px; }
@media (min-width: 1024px) { .agw-hub-duo { grid-template-columns: minmax(0, 1.25fr) minmax(320px, .75fr); gap: 28px; align-items: start; } }
.agw-hub-lado { display: grid; gap: 16px; align-content: start; }

.agw-hub-linhas { display: grid; gap: 12px; padding: 0; list-style: none; }
.agw-hub-linha {
	border: 1px solid var(--hub-borda); border-radius: 12px; background: #fff; box-shadow: var(--hub-sombra);
	transition: transform .18s, box-shadow .18s, border-color .18s;
}
.agw-hub-linha:hover { transform: translateY(-2px); border-color: #c7dcf5; box-shadow: 0 10px 22px rgba(11, 58, 37, .1); }
.mg-hub .agw-hub-linha a { display: flex; align-items: center; gap: 12px; padding: 10px 14px 10px 10px; text-decoration: none; }
.agw-hub-linha__foto { flex: none; width: 92px; height: 66px; overflow: hidden; border-radius: 9px; background: #ebe8df; }
.agw-hub-linha__foto img { width: 100%; height: 100%; object-fit: cover; }
.agw-hub-linha__data { flex: none; display: grid; place-items: center; align-content: center; width: 52px; line-height: 1; text-align: center; }
.agw-hub-linha__data strong { font-size: 17px; font-weight: 800; color: var(--hub-marinho); }
.agw-hub-linha__data span { margin-top: 3px; font-size: 10.5px; font-weight: 800; letter-spacing: .08em; color: var(--hub-texto-2); }
.agw-hub-linha__corpo { flex: 1; min-width: 0; }
.agw-hub-linha__titulo { display: block; font-size: 15px; font-weight: 800; line-height: 1.3; color: var(--hub-marinho); }
.agw-hub-linha:hover .agw-hub-linha__titulo { color: var(--hub-azul); }
.agw-hub-linha__dados { display: flex; flex-wrap: wrap; gap: 4px 16px; margin-top: 5px; }
.agw-hub-linha__dados span { display: inline-flex; align-items: center; gap: 6px; font-size: 12.5px; color: var(--hub-texto-2); }
.agw-hub-linha__dados svg { width: 14px; height: 14px; flex: none; color: var(--hub-azul); }
.agw-hub-linha__seta { flex: none; color: #8fa3c0; }
.agw-hub-linha__seta svg { width: 20px; height: 20px; }
@media (max-width: 479.98px) { .agw-hub-linha__foto { display: none; } }

/* ---- calendário ---- */
.agw-hub-cal { padding: 16px 16px 18px; border: 1px solid var(--hub-borda); border-radius: 14px; background: #fff; box-shadow: var(--hub-sombra); }
.agw-hub-cal__topo { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 10px; }
.agw-hub-cal__mes { font-size: 15px; font-weight: 800; color: var(--hub-marinho); }
.mg-hub .agw-hub-cal__seta {
	display: grid; place-items: center; width: 34px; height: 34px; border-radius: 9px; background: #f2f6fc;
	color: var(--hub-azul); text-decoration: none;
}
.mg-hub .agw-hub-cal__seta:hover { background: #e3edfb; }
.agw-hub-cal__seta svg { width: 18px; height: 18px; stroke-width: 2.2; }

.agw-hub-cal__grade { width: 100%; border-collapse: collapse; table-layout: fixed; }
.agw-hub-cal__grade th { padding: 6px 0; font-size: 11.5px; font-weight: 700; color: var(--hub-texto-2); }
.agw-hub-cal__grade td { padding: 2px; text-align: center; }
.agw-hub-cal__dia {
	display: grid; place-items: center; width: 34px; height: 34px; margin: 0 auto; border-radius: 99px;
	font-size: 13px; font-weight: 600; color: var(--hub-texto); text-decoration: none;
}
a.agw-hub-cal__dia { font-weight: 800; }
.agw-hub-cal__dia.tem-evento { background: var(--hub-verde-f); color: #fff; }
a.agw-hub-cal__dia.tem-evento:hover { background: #0f6f45; color: #fff; }
.agw-hub-cal__dia.e-hoje { background: var(--hub-azul); color: #fff; }
.agw-hub-cal__dia.e-escolhido { outline: 2px solid var(--hub-marinho); outline-offset: 2px; }
.agw-hub-cal__fora { color: #b9c6d8; }

.agw-hub-cal__legenda { display: flex; gap: 18px; justify-content: center; margin-top: 12px; font-size: 12.5px; color: var(--hub-texto-2); }
.agw-hub-cal__legenda span { display: inline-flex; align-items: center; gap: 7px; }
.agw-hub-cal__bola { width: 9px; height: 9px; border-radius: 99px; }
.agw-hub-cal__bola--verde { background: var(--hub-verde-f); }
.agw-hub-cal__bola--azul { background: var(--hub-azul); }

.agw-hub-cal__dia-lista { margin-top: 14px; padding-top: 12px; border-top: 1px solid var(--hub-borda); }
.agw-hub-cal__dia-titulo { font-size: 13px; font-weight: 800; color: var(--hub-marinho); }
.agw-hub-cal__dia-lista ul { display: grid; gap: 6px; margin-top: 8px; padding: 0; list-style: none; }
.mg-hub .agw-hub-cal__dia-lista a { font-size: 13.5px; font-weight: 600; color: var(--hub-azul); text-decoration: none; }
.mg-hub .agw-hub-cal__dia-lista a:hover { text-decoration: underline; text-underline-offset: 3px; }
.agw-hub-cal__dia-vazio { margin-top: 6px; font-size: 13px; color: var(--hub-texto-2); }

/* ---- aviso de novidades ---- */
.agw-hub-aviso { display: flex; align-items: flex-start; gap: 14px; padding: 18px; border: 1px solid #d5e5fa; border-radius: 14px; background: #eef5fd; }
.agw-hub-aviso__ico { display: grid; place-items: center; flex: none; width: 42px; height: 42px; border-radius: 12px; background: #fff; color: var(--hub-azul); }
.agw-hub-aviso__ico svg { width: 22px; height: 22px; }
.agw-hub-aviso h2 { font-size: 16px; font-weight: 800; color: var(--hub-marinho); }
.mg-hub .agw-hub-aviso p { margin-top: 6px; font-size: 13px; line-height: 1.45; color: var(--hub-texto-2); }
.agw-hub-aviso__btn {
	display: inline-flex; align-items: center; gap: 8px; min-height: 40px; margin-top: 12px; padding: 0 16px; border-radius: 9px;
	border: 1px solid #c5dbf7; background: #fff; color: var(--hub-azul); font-size: 13.5px; font-weight: 700; text-decoration: none;
}
.agw-hub-aviso__btn:hover { border-color: var(--hub-azul); background: #f4f9ff; }
.agw-hub-aviso__btn svg { width: 16px; height: 16px; }

/* ================= 3b. ESTADO SEM EVENTOS ================= */
.agw-hub-secao--vazio { padding-top: 10px; }
.agw-hub-vazio {
	display: grid; gap: 22px; align-items: center; padding: 26px 22px; border-radius: 20px;
	background: linear-gradient(115deg, #f2f7fd 0%, #eef6fb 60%, #edf7f2 100%); border: 1px solid #e2ebf6;
}
@media (min-width: 900px) { .agw-hub-vazio { grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 34px; padding: 34px 32px; } }
.agw-hub-vazio__arte { position: relative; }
.agw-hub-vazio__arte > svg { display: block; width: 100%; max-width: 330px; margin: 0 auto; height: auto; }
.agw-hub-vazio__frase { margin-top: -26px; text-align: center; font-size: 22px; line-height: 1.1; color: var(--hub-marinho); }
.agw-hub-vazio__frase svg { display: block; width: 64%; height: 11px; margin: 4px auto 0; stroke: var(--hub-laranja); stroke-width: 4; }
.mg-hub .agw-hub-vazio__texto h2 { font-size: clamp(22px, 2.6vw, 31px); font-weight: 800; line-height: 1.18; letter-spacing: -.025em; color: var(--hub-marinho); }
.mg-hub .agw-hub-vazio__texto p { margin-top: 12px; max-width: 52ch; font-size: 15px; line-height: 1.55; color: var(--hub-texto-2); }
.agw-hub-vazio__botoes { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 20px; }
.agw-hub-vazio__btn {
	display: inline-flex; align-items: center; gap: 9px; min-height: 48px; padding: 0 24px; border-radius: 99px;
	background: var(--hub-azul); color: #fff; font-size: 15px; font-weight: 700; text-decoration: none;
	box-shadow: 0 6px 16px rgba(15, 81, 50, .22); transition: background-color .18s;
}
.agw-hub-vazio__btn:hover { background: var(--hub-azul-h); color: #fff; }
.agw-hub-vazio__btn svg { width: 18px; height: 18px; }
.mg-hub .agw-hub-vazio__btn--linha { border: 1.5px solid #cfe3d6; background: #fff; color: var(--hub-azul); box-shadow: none; }
.mg-hub .agw-hub-vazio__btn--linha:hover { border-color: var(--hub-azul); background: #f4f9ff; color: var(--hub-azul-h); }

/* ================= 5. COMUNIDADE NO WHATSAPP ================= */
.agw-hub-secao--zap { padding-top: 8px; padding-bottom: 8px; }
.agw-hub-zap {
	display: grid; gap: 18px; align-items: center; padding: 22px; border: 1px solid #cfe9dc; border-radius: 18px; background: #e9f5ef;
}
@media (min-width: 900px) { .agw-hub-zap { grid-template-columns: auto minmax(0, 1fr) auto; gap: 24px; padding: 24px 28px; } }
.agw-hub-zap__ico { display: grid; place-items: center; flex: none; width: 64px; height: 64px; border-radius: 99px; background: var(--hub-verde); color: #fff; }
.agw-hub-zap__ico svg { width: 36px; height: 36px; fill: currentColor; stroke: none; }
.agw-hub-zap h2 { display: grid; gap: 2px; font-size: 21px; font-weight: 800; line-height: 1.2; letter-spacing: -.02em; }
.agw-hub-zap h2 span { font-size: 17px; font-weight: 700; color: var(--hub-verde-f); }
.agw-hub-zap h2 strong { color: var(--hub-marinho); }
.mg-hub .agw-hub-zap__texto p { margin-top: 8px; max-width: 56ch; font-size: 14px; line-height: 1.5; color: var(--hub-texto-2); }
.agw-hub-zap__acao { text-align: center; }
.agw-hub-zap__btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 50px; padding: 0 26px; border-radius: 99px;
	background: var(--hub-verde-f); color: #fff; font-size: 15.5px; font-weight: 700; text-decoration: none;
	box-shadow: 0 8px 20px rgba(21, 138, 88, .26); transition: background-color .18s;
}
.agw-hub-zap__btn:hover { background: #0f6f45; color: #fff; }
.agw-hub-zap__btn svg { width: 20px; height: 20px; fill: currentColor; stroke: none; }
.mg-hub .agw-hub-zap__acao p { margin-top: 10px; font-size: 12.5px; color: var(--hub-texto-2); }

/* ================= 6. VAI REALIZAR UM EVENTO? ================= */
.agw-hub-secao--anuncie { padding-top: 8px; }
.agw-hub-anuncie {
	position: relative; display: grid; gap: 18px; align-items: center; padding: 22px;
	border: 1px solid #d9e6f8; border-radius: 18px; background: #f1f7fd;
}
@media (min-width: 900px) { .agw-hub-anuncie { grid-template-columns: auto minmax(0, 1fr) auto; gap: 24px; padding: 24px 28px; } }
.agw-hub-anuncie__ico { display: grid; place-items: center; flex: none; width: 54px; height: 54px; border-radius: 14px; background: #fff; color: var(--hub-azul); }
.agw-hub-anuncie__ico svg { width: 30px; height: 30px; }
.agw-hub-anuncie h2 { font-size: 21px; font-weight: 800; line-height: 1.2; letter-spacing: -.02em; color: var(--hub-azul); }
.mg-hub .agw-hub-anuncie__texto p { margin-top: 8px; max-width: 58ch; font-size: 14px; line-height: 1.5; color: var(--hub-texto-2); }
.agw-hub-anuncie__acao { display: grid; justify-items: center; gap: 12px; }
.agw-hub-anuncie__btn {
	display: inline-flex; align-items: center; gap: 10px; min-height: 50px; padding: 0 26px; border-radius: 10px;
	background: var(--hub-azul); color: #fff; font-size: 15.5px; font-weight: 700; text-decoration: none;
	box-shadow: 0 6px 16px rgba(15, 81, 50, .22); transition: background-color .18s;
}
.agw-hub-anuncie__btn:hover { background: var(--hub-azul-h); color: #fff; }
.agw-hub-anuncie__btn svg { width: 18px; height: 18px; }
.agw-hub-anuncie__bens { display: flex; flex-wrap: wrap; justify-content: center; gap: 6px 16px; padding: 0; list-style: none; }
.agw-hub-anuncie__bens li { display: inline-flex; align-items: center; gap: 5px; font-size: 12.5px; font-weight: 700; color: var(--hub-verde-f); }
.agw-hub-anuncie__bens svg { width: 14px; height: 14px; stroke-width: 2.6; }
.agw-hub-anuncie__frase { text-align: right; font-size: 20px; line-height: 1.08; color: var(--hub-marinho); }
.agw-hub-anuncie__frase svg { display: block; width: 78%; height: 10px; margin: 3px 0 0 auto; stroke: var(--hub-laranja); stroke-width: 4; }
@media (max-width: 1099.98px) { .agw-hub-anuncie__frase { display: none; } }
@media (min-width: 1100px) { .agw-hub-anuncie { grid-template-columns: auto minmax(0, 1fr) auto auto; } }

/* ================= 7. ENQUANTO ISSO, EXPLORE ================= */
.agw-hub-explore { display: grid; grid-template-columns: minmax(0, 1fr); gap: 14px; padding: 0; list-style: none; }
@media (min-width: 620px) { .agw-hub-explore { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1100px) { .agw-hub-explore { grid-template-columns: repeat(5, minmax(0, 1fr)); } }
.agw-hub-exp {
	display: flex; flex-direction: column; gap: 8px; height: 100%; padding: 18px 16px 16px;
	border: 1px solid var(--hub-borda); border-radius: 14px; background: #fff; box-shadow: var(--hub-sombra);
}
.agw-hub-exp__ico { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 12px; }
.agw-hub-exp__ico svg { width: 22px; height: 22px; }
.agw-hub-exp__titulo { font-size: 16px; font-weight: 800; color: var(--hub-marinho); }
.agw-hub-exp__texto { font-size: 13px; line-height: 1.45; color: var(--hub-texto-2); }
.mg-hub .agw-hub-exp .mg-hub-btn { margin-top: auto; }

/* ================= 7b. TRÊS BLOCOS DE AÇÃO ================= */
.agw-hub-acoes { display: grid; grid-template-columns: minmax(0, 1fr); gap: 16px; padding: 0; list-style: none; }
@media (min-width: 900px) { .agw-hub-acoes { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.agw-hub-acao { display: flex; flex-direction: column; gap: 8px; height: 100%; padding: 20px; border-radius: 16px; }
.agw-hub-acao--verde { border: 1px solid #cfe9dc; background: #e9f5ef; }
.agw-hub-acao--azul { border: 1px solid #d5e5fa; background: #eef5fd; }
.agw-hub-acao--laranja { border: 1px solid #f8ddc3; background: #fff3e8; }
.agw-hub-acao__ico { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 12px; background: #fff; }
.agw-hub-acao__ico svg { width: 24px; height: 24px; }
.agw-hub-acao--verde .agw-hub-acao__ico { color: var(--hub-verde-f); }
.agw-hub-acao--azul .agw-hub-acao__ico { color: var(--hub-azul); }
.agw-hub-acao--laranja .agw-hub-acao__ico { color: #e56d00; }
.agw-hub-acao h2 { font-size: 17px; font-weight: 800; line-height: 1.25; color: var(--hub-marinho); }
.mg-hub .agw-hub-acao p { max-width: 42ch; font-size: 13.5px; line-height: 1.5; color: var(--hub-texto-2); }
.agw-hub-acao__btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 8px; align-self: flex-start; min-height: 42px;
	margin-top: auto; padding: 0 18px; border-radius: 9px; border: 1px solid #cfe3d6; background: #fff;
	font-size: 14px; font-weight: 700; color: var(--hub-azul); text-decoration: none; transition: background-color .16s, border-color .16s;
}
.agw-hub-acao__btn:hover { border-color: var(--hub-azul); background: #f4f9ff; }
.agw-hub-acao__btn svg { width: 16px; height: 16px; }
.mg-hub .agw-hub-acao__btn--cheio { border-color: var(--hub-verde-f); background: var(--hub-verde-f); color: #fff; }
.mg-hub .agw-hub-acao__btn--cheio:hover { border-color: #0f6f45; background: #0f6f45; color: #fff; }

/* ================= a armadilha do respiro ================= *
 * A casca zera a margem de `ul`, `p` e `h2` com `.mg-hub ul { margin: 0 }` — classe MAIS
 * elemento, que vence regra de classe sozinha em qualquer ordem. Todo respiro daqui precisa
 * da mesma força. */
.mg-hub ul.agw-hub-hero__destaques { margin-top: 26px; }
@media (min-width: 1024px) { .mg-hub ul.agw-hub-hero__destaques { margin-top: 34px; } }
.mg-hub ul.agw-hub-anuncie__bens { margin-top: 0; }
.mg-hub p.agw-hub-vazio__frase { margin-top: -26px; }

/* Nove categorias cabem numa linha só a partir de 1100px; com mais que isso, quebra sozinho.
   `auto-fill` pelo motivo explicado lá em cima: com duas categorias o `auto-fit` esticava cada
   cartão até meia tela. */
@media (min-width: 1100px) { .agw-hub-cats { grid-template-columns: repeat(auto-fill, minmax(112px, 1fr)); } }

/* A foto da igreja é clara embaixo à direita. Um véu extra no rodapé do herói devolve o contraste
   sem escurecer o céu. Nasceu para a frase escrita à mão, que o dono mandou tirar em 21/09/2026;
   fica porque é ele que segura a linha de indicadores ("Eventos da cidade", "Para todos os gostos")
   em cima das flores claras. */
.agw-hub-hero::after {
	background:
		linear-gradient(180deg, rgba(6, 20, 40, 0) 50%, rgba(6, 20, 40, .55) 82%, rgba(6, 20, 40, .74) 100%),
		linear-gradient(180deg, rgba(6, 20, 40, .58) 0%, rgba(6, 20, 40, .5) 30%, rgba(6, 20, 40, .66) 70%, rgba(6, 20, 40, .82) 100%);
}
@media (min-width: 1024px) {
	.agw-hub-hero::after {
		background:
			linear-gradient(180deg, rgba(6, 20, 40, 0) 46%, rgba(6, 20, 40, .5) 78%, rgba(6, 20, 40, .7) 100%),
			linear-gradient(101deg, rgba(6, 20, 40, .88) 0%, rgba(6, 20, 40, .72) 30%, rgba(6, 20, 40, .28) 58%, rgba(6, 20, 40, .14) 78%, rgba(6, 20, 40, .34) 100%);
	}
}
