/**
 * Página do anúncio (guiawp-reset/single-gcep_anuncio.php): etapa 7 do redesign.
 *
 * Tela: design_handoff_morro_guia/telas/Pagina de Anuncio v2 Morro Guia.dc.html (e o bloco ANÚNCIO dos
 * protótipos mobile). Fonte Inter, cores do manual. Classes mg-* porque o Tailwind do site é
 * pré-compilado. Carregado só na ficha (GCEP_Anuncio_Ficha::enqueue), versão por filemtime.
 *
 * A marcação dos addons que entra pelos ganchos é restilizada aqui, sempre com o escopo da ficha
 * (.mg-an-principal / .mg-an-lado), para as outras telas desses addons não mudarem.
 *
 * Contraste: verde de botão com texto branco é #13804f (o #22b573 fica em 2,6:1); verde de texto é
 * #0a6b42; laranja de botão leva texto marinho.
 *
 * @package GuiaWP
 * @since   2.5.450 - Valoar - 2026-09-14
 */

.mg-an {
	font-family: Inter, system-ui, sans-serif;
	color: #33496b;
	background: #f6f8fb;
	padding-block: 12px 40px;
}
.mg-an *, .mg-an *::before, .mg-an *::after { box-sizing: border-box; }
.mg-an [hidden] { display: none !important; }

body.single-gcep_anuncio .gcep-migalha { max-width: 1440px; padding: 12px 16px 0; }
@media (min-width: 768px) { body.single-gcep_anuncio .gcep-migalha { padding-inline: 24px; } }
@media (min-width: 1440px) { body.single-gcep_anuncio .gcep-migalha { padding-inline: 44px; } }

.mg-an-ico {
	width: 18px; height: 18px;
	flex: none;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.9;
	stroke-linecap: round;
	stroke-linejoin: round;
}
.mg-an-ico--vira { transform: rotate(180deg); }

/* ── Botões ─────────────────────────────────────────────────────────────── */

.mg-an-btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 8px;
	min-height: 46px;
	padding: 0 18px;
	border: 1px solid transparent;
	border-radius: 9px;
	font: 700 14px/1.15 Inter, system-ui, sans-serif;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
	transition: filter .15s ease, background-color .15s ease;
}
.mg-an-btn:focus-visible { outline: 2px solid #0d2b5c; outline-offset: 2px; }
.mg-an-btn--verde { background: #13804f; color: #fff; }
.mg-an-btn--verde:hover { filter: brightness(1.08); color: #fff; }
.mg-an-btn--azul { background: #1266d6; color: #fff; }
.mg-an-btn--azul:hover { background: #0d47a6; color: #fff; }
.mg-an-btn--suave { background: #f1f5fa; color: #33496b; border-color: #e1e8f2; }
.mg-an-btn--suave:hover { background: #e7eef7; color: #0d2b5c; }
.mg-an-btn--suave .mg-an-ico { color: #1266d6; }
.mg-an-btn--linha { background: #fff; color: #0d4fa8; border-color: #d3e3f8; }
.mg-an-btn--linha:hover { background: #f4f8fd; color: #0d47a6; }
.mg-an-btn--linha .mg-an-ico { color: #1266d6; }
.mg-an-btn--laranja { background: #ff7a00; color: #0d2b5c; flex: none; }
.mg-an-btn--laranja:hover { filter: brightness(1.06); color: #0d2b5c; }
.mg-an-btn--laranja:focus-visible { outline-color: #fff; }
.mg-an-btn--largo { width: 100%; }

/* ── Herói com galeria ──────────────────────────────────────────────────── */

.mg-an-heroi { display: grid; grid-template-columns: minmax(0, 1fr); gap: 10px; }
.mg-an-heroi__principal {
	position: relative;
	aspect-ratio: 3 / 2;
	max-height: 70vh;
	border-radius: 13px;
	overflow: hidden;
	/* Correção da auditoria, etapa 3 (T2): fundo liso, sem degradê decorativo. */
	background: var(--mg-marinho, #0d2b5c);
}
.mg-an-heroi__abrir { display: block; width: 100%; height: 100%; padding: 0; border: 0; background: none; cursor: zoom-in; }
.mg-an-heroi__abrir picture { display: block; width: 100%; height: 100%; }
.mg-an-heroi__img { display: block; width: 100%; height: 100%; object-fit: cover; }
.mg-an-heroi__abrir:focus-visible { outline: 3px solid #fff; outline-offset: -6px; }
.mg-an-heroi__principal--marca { aspect-ratio: auto; min-height: 150px; }
.mg-an-heroi__marca { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; min-height: 150px; }
.mg-an-heroi__inicial { font-size: 64px; font-weight: 800; line-height: 1; color: #fff; }
.mg-an-heroi__marca-logo { width: 104px; height: 104px; object-fit: contain; padding: 8px; border-radius: 18px; background: #fff; }

.mg-an-heroi__acoes { position: absolute; top: 10px; right: 10px; z-index: 2; display: flex; gap: 8px; }
.mg-an-heroi__btn,
.mg-an-heroi .mg-salvar--icone {
	width: 44px; height: 44px;
	display: inline-flex; align-items: center; justify-content: center;
	padding: 0;
	border: 0;
	border-radius: 99px;
	background: rgba(255, 255, 255, .95);
	color: #1266d6;
	box-shadow: 0 2px 8px rgba(13, 43, 92, .18);
}
.mg-an-heroi__btn:hover { background: #fff; color: #0d47a6; }
.mg-an-heroi__btn:focus-visible,
.mg-an-heroi .mg-salvar--icone:focus-visible { outline: 3px solid #fff; outline-offset: 2px; box-shadow: 0 0 0 5px #1266d6; }

.mg-an-heroi__conta {
	position: absolute; left: 12px; bottom: 12px; z-index: 2;
	padding: 8px 12px;
	border-radius: 8px;
	background: rgba(13, 43, 92, .8);
	color: #fff;
	font-size: 12px; font-weight: 600; line-height: 1;
}
.mg-an-heroi__todas {
	position: absolute; right: 12px; bottom: 12px; z-index: 2;
	display: inline-flex; align-items: center; gap: 7px;
	min-height: 44px;
	padding: 0 14px;
	border: 0;
	border-radius: 9px;
	background: #fff;
	color: #0d2b5c;
	font: 700 13px/1 Inter, system-ui, sans-serif;
	cursor: pointer;
	box-shadow: 0 2px 8px rgba(13, 43, 92, .18);
}
.mg-an-heroi__todas .mg-an-ico { width: 16px; height: 16px; color: #1266d6; }
.mg-an-heroi__todas:focus-visible { outline: 3px solid #1266d6; outline-offset: 2px; }
.mg-an-heroi__minis { display: none; }

@media (max-width: 379px) {
	.mg-an-heroi__todas { font-size: 12px; padding: 0 11px; }
}
@media (min-width: 768px) {
	.mg-an-heroi__principal { aspect-ratio: 21 / 8; max-height: 420px; border-radius: 16px; }
	.mg-an-heroi__principal--marca { min-height: 200px; aspect-ratio: auto; }
	.mg-an-heroi--minis { grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); height: clamp(280px, 30vw, 400px); }
	.mg-an-heroi--minis .mg-an-heroi__principal { aspect-ratio: auto; max-height: none; height: 100%; border-radius: 16px 0 0 16px; }
	.mg-an-heroi--minis .mg-an-heroi__minis { display: grid; grid-template-rows: repeat(2, minmax(0, 1fr)); gap: 10px; min-height: 0; }
	.mg-an-heroi--uma .mg-an-heroi__minis { grid-template-rows: minmax(0, 1fr); }
	.mg-an-heroi__mini {
		position: relative;
		display: block;
		min-height: 0;
		padding: 0;
		border: 0;
		overflow: hidden;
		background: #eef5fe;
		cursor: zoom-in;
	}
	.mg-an-heroi__mini:first-child { border-radius: 0 16px 0 0; }
	.mg-an-heroi__mini:last-child { border-radius: 0 0 16px 0; }
	.mg-an-heroi--uma .mg-an-heroi__mini { border-radius: 0 16px 16px 0; }
	.mg-an-heroi__mini img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .25s ease; }
	.mg-an-heroi__mini:hover img { transform: scale(1.04); }
	.mg-an-heroi__mini:focus-visible { outline: 3px solid #1266d6; outline-offset: -3px; }
	.mg-an-heroi__resto {
		position: absolute; inset: 0;
		display: flex; align-items: center; justify-content: center;
		background: rgba(13, 43, 92, .55);
		color: #fff;
		font-size: 22px; font-weight: 800;
	}
	.mg-an-heroi__acoes { top: 16px; right: 16px; gap: 10px; }
	.mg-an-heroi__conta { left: 18px; bottom: 18px; }
	.mg-an-heroi__todas { right: 18px; bottom: 18px; }
}

/* ── Grade ──────────────────────────────────────────────────────────────── */

.mg-an-grade { display: grid; grid-template-columns: minmax(0, 1fr); gap: 16px; margin-top: 16px; }
.mg-an-principal, .mg-an-lado { display: grid; grid-template-columns: minmax(0, 1fr); gap: 16px; align-content: start; min-width: 0; }
.mg-an .mg-an-principal > *, .mg-an .mg-an-lado > * { margin-top: 0; margin-bottom: 0; min-width: 0; }
@media (min-width: 1024px) {
	.mg-an-grade { grid-template-columns: minmax(0, 1fr) 330px; gap: 24px; align-items: start; }
	.mg-an-lado { position: sticky; top: 126px; }
}
@media (min-width: 1280px) {
	.mg-an-grade { grid-template-columns: minmax(0, 1fr) 372px; gap: 30px; }
}

/* Fim da página: a seção citada na âncora não fica embaixo do cabeçalho nem das abas. */
.mg-an [id] { scroll-margin-top: 166px; }
@media (min-width: 768px) { .mg-an [id] { scroll-margin-top: 178px; } }

/* ── Cartões e títulos ──────────────────────────────────────────────────── */

.mg-an-card {
	background: #fff;
	border: 1px solid #e1e8f2;
	border-radius: 14px;
	padding: 18px;
	box-shadow: 0 1px 3px rgba(13, 43, 92, .05);
}
@media (min-width: 768px) { .mg-an-card { padding: 22px 24px; } }

.mg-an-h2 { margin: 0 0 16px; font-size: 19px; font-weight: 800; line-height: 1.25; letter-spacing: -.015em; color: #0d2b5c; }
.mg-an-h2::after { content: ""; display: block; width: 32px; height: 3px; margin-top: 9px; border-radius: 99px; background: #1266d6; }
.mg-an-h2--lado { display: flex; align-items: center; gap: 8px; font-size: 15px; } /* etapa 3 (A11): 16 -> 15px */
.mg-an-h2--lado::after { display: none; }
.mg-an-h2--lado .mg-an-ico { color: #1266d6; }
.mg-an-h3 { margin: 22px 0 12px; font-size: 14.5px; font-weight: 800; color: #0d2b5c; }

/* ── Identidade ─────────────────────────────────────────────────────────── */

.mg-an-id { display: flex; gap: 14px; align-items: flex-start; }
.mg-an-id__logo {
	flex: none;
	width: 64px; height: 64px;
	display: flex; align-items: center; justify-content: center;
	border: 1px solid #e1e8f2;
	border-radius: 14px;
	background: #fff;
	overflow: hidden;
}
.mg-an-id__logo-img { width: 100%; height: 100%; object-fit: contain; }
.mg-an-id__txt { flex: 1; min-width: 0; }
.mg-an-id__h1 { margin: 0 0 6px; font-size: 23px; font-weight: 800; line-height: 1.2; letter-spacing: -.02em; color: #0d2b5c; overflow-wrap: anywhere; text-wrap: balance; }
.mg-an-id__frase { margin: 0 0 12px; font-size: 14px; line-height: 1.5; color: #52678a; }
.mg-an-id__frase a { color: #0d4fa8; font-weight: 700; text-decoration: none; }
.mg-an-id__frase a:hover { text-decoration: underline; }
.mg-an-id__frase a:focus-visible { outline: 2px solid #1266d6; outline-offset: 2px; border-radius: 3px; }

.mg-an-chips { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; }
.mg-an-chip {
	display: inline-flex; align-items: center;
	min-height: 44px;
	padding: 0 14px;
	border-radius: 99px;
	background: #f1f5fa;
	color: #33496b;
	font-size: 13px; font-weight: 600;
	text-decoration: none;
}
.mg-an-chip:hover { background: #e7eef7; color: #0d2b5c; }
.mg-an-chip--forte { background: #eaf2fd; color: #0d4fa8; }
.mg-an-chip:focus-visible { outline: 2px solid #1266d6; outline-offset: 2px; }

.mg-an-id__meta {
	display: flex; flex-wrap: wrap; align-items: center; gap: 6px 18px;
	margin-top: 12px; padding-top: 12px;
	border-top: 1px solid #edf1f6;
	font-size: 13px;
}
.mg-an-id__meta:not(:has(*)) { display: none; }
.mg-an-id__local { display: inline-flex; align-items: center; gap: 6px; color: #52678a; }
.mg-an-id__local .mg-an-ico { width: 16px; height: 16px; color: #1266d6; }
.mg-an-id__hora:not(:has(.gcep-hours-chip)) { display: none; }
.mg-an-id__hora .gcep-hours-chip {
	display: inline-flex; align-items: center; gap: 6px;
	padding: 7px 11px;
	border-radius: 99px;
	font-size: 12.5px; font-weight: 700; line-height: 1;
}
.mg-an-id__hora .gcep-hours-chip.is-open { background: #e9f7f0; color: #0a6b42; }
.mg-an-id__hora .gcep-hours-chip.is-closed { background: #f1f5fa; color: #52678a; }

/* Resumo das avaliações (addon, gancho gcep_single_after_header): uma estrela, nota e total. */
.mg-an-id .avgw-single-summary { display: inline-flex; align-items: center; gap: 6px; margin: 0; flex-wrap: wrap; }
.mg-an-id .avgw-single-summary .avgw-star { display: none; color: #f5a524; font-size: 16px; }
.mg-an-id .avgw-single-summary .avgw-star:first-child { display: inline; }
.mg-an-id .avgw-single-summary__media { font-weight: 800; color: #0d2b5c; }
.mg-an-id .avgw-single-summary__total { color: #52678a; }
.mg-an-id .avgw-single-summary__link { display: inline-flex; align-items: center; min-height: 44px; font-weight: 700; color: #0d4fa8; text-decoration: none; }
.mg-an-id .avgw-single-summary__link:hover { text-decoration: underline; }

@media (min-width: 768px) {
	.mg-an-id { gap: 20px; }
	.mg-an-id__logo { width: 96px; height: 96px; }
	.mg-an-id__h1 { font-size: 28px; }
}
/* etapa 3 (A11): H1 fica em 28px também no desktop, como no protótipo. */

/* ── Abas âncora ────────────────────────────────────────────────────────── */

.mg-an-abas {
	position: sticky;
	top: 98px;
	z-index: 30;
	background: #fff;
	border: 1px solid #e1e8f2;
	border-radius: 12px;
	box-shadow: 0 4px 12px rgba(13, 43, 92, .06);
}
@media (min-width: 768px) { .mg-an-abas { top: 110px; } }
.mg-an-abas ul { display: flex; gap: 2px; margin: 0; padding: 0 8px; list-style: none; overflow-x: auto; scrollbar-width: none; }
.mg-an-abas ul::-webkit-scrollbar { display: none; }
.mg-an-abas a {
	display: inline-flex; align-items: center;
	min-height: 48px;
	padding: 0 11px;
	border-bottom: 2.5px solid transparent;
	font-size: 13.5px; font-weight: 600;
	color: #52678a;
	text-decoration: none;
	white-space: nowrap;
}
.mg-an-abas a:hover, .mg-an-abas a[aria-current="true"] { color: #1266d6; border-bottom-color: #1266d6; }
.mg-an-abas a[aria-current="true"] { font-weight: 700; }
.mg-an-abas a:focus-visible { outline: 2px solid #1266d6; outline-offset: -4px; border-radius: 6px; }

/* ── Sobre e diferenciais ───────────────────────────────────────────────── */

.mg-an-texto { font-size: 15px; line-height: 1.8; color: #33496b; overflow-wrap: anywhere; }
.mg-an-texto p { margin: 0 0 1em; }
.mg-an-texto > :last-child { margin-bottom: 0; }
.mg-an-texto ul, .mg-an-texto ol { margin: 0 0 1em; padding-left: 1.3em; }
.mg-an-texto ul { list-style: disc; }
.mg-an-texto ol { list-style: decimal; }
.mg-an-texto h2, .mg-an-texto h3, .mg-an-texto h4 { margin: 1.2em 0 .5em; font-size: 16px; font-weight: 800; color: #0d2b5c; }
.mg-an-texto a { color: #0d4fa8; text-decoration: underline; }
.mg-an-texto strong { color: #0d2b5c; }
.mg-an-texto.is-recolhido {
	max-height: 12.6em;
	overflow: hidden;
	-webkit-mask-image: linear-gradient(#000 65%, transparent);
	mask-image: linear-gradient(#000 65%, transparent);
}
.mg-an-mais {
	display: inline-flex; align-items: center;
	min-height: 44px;
	padding: 0 2px;
	border: 0;
	background: none;
	font: 700 14px/1 Inter, system-ui, sans-serif;
	color: #0d4fa8;
	cursor: pointer;
}
.mg-an-mais:focus-visible { outline: 2px solid #1266d6; outline-offset: 2px; border-radius: 4px; }

.mg-an-dif { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; margin: 0; padding: 0; list-style: none; }
@media (min-width: 640px) { .mg-an-dif { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (min-width: 1280px) { .mg-an-dif { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.mg-an-dif__item {
	display: flex; align-items: center; gap: 9px;
	min-width: 0;
	padding: 11px 12px;
	border: 1px solid #e6ecf4;
	border-radius: 10px;
	font-size: 13px; font-weight: 600; line-height: 1.35;
	color: #0d2b5c;
	overflow-wrap: anywhere;
}
.mg-an-dif__ico { width: 17px; height: 17px; color: #13804f; }

/* ── Vídeos ─────────────────────────────────────────────────────────────── */

.mg-an-video { position: relative; aspect-ratio: 16 / 9; border-radius: 12px; overflow: hidden; background: #000; }
.mg-an-video iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.mg-an-videos { display: flex; align-items: center; gap: 8px; margin-top: 12px; }
.mg-an-videos__faixa { display: flex; gap: 10px; flex: 1; min-width: 0; overflow-x: auto; scroll-behavior: smooth; scrollbar-width: thin; }
.mg-an-videos__mini {
	position: relative;
	flex: none;
	width: 136px;
	aspect-ratio: 16 / 9;
	display: flex; align-items: center; justify-content: center;
	padding: 0;
	border: 2px solid transparent;
	border-radius: 9px;
	overflow: hidden;
	background: #0d1624;
	cursor: pointer;
}
.mg-an-videos__mini img { width: 100%; height: 100%; object-fit: cover; display: block; }
.mg-an-videos__mini.is-active { border-color: #1266d6; }
.mg-an-videos__mini:focus-visible { outline: 2px solid #1266d6; outline-offset: 2px; }
.mg-an-videos__prov { color: #fff; font-size: 11px; font-weight: 700; }
.mg-an-videos__tipo { position: absolute; top: 4px; left: 4px; padding: 2px 6px; border-radius: 4px; background: rgba(0, 0, 0, .75); color: #fff; font-size: 10px; font-weight: 700; text-transform: uppercase; }
.mg-an-videos__nav {
	width: 44px; height: 44px; flex: none;
	display: inline-flex; align-items: center; justify-content: center;
	border: 1px solid #e1e8f2; border-radius: 99px;
	background: #fff; color: #33496b;
	cursor: pointer;
}
.mg-an-videos__nav:focus-visible { outline: 2px solid #1266d6; outline-offset: 2px; }

/* ── Localização ────────────────────────────────────────────────────────── */

.mg-an-local__end { display: flex; align-items: flex-start; gap: 8px; margin: 0 0 14px; font-size: 14px; line-height: 1.5; color: #52678a; overflow-wrap: anywhere; }
.mg-an-local__end .mg-an-ico { width: 17px; height: 17px; margin-top: 2px; color: #1266d6; }
.mg-an-mapa { position: relative; z-index: 0; height: 260px; border: 1px solid #e1e8f2; border-radius: 12px; overflow: hidden; background: #eef2f7; }
.mg-an-mapa img { max-width: none !important; }
@media (min-width: 768px) { .mg-an-mapa { height: 320px; } }
.mg-an-local__botoes { display: grid; grid-template-columns: minmax(0, 1fr); gap: 10px; margin-top: 14px; }
@media (min-width: 480px) { .mg-an-local__botoes { display: flex; flex-wrap: wrap; } }

/* ── Compartilhar ───────────────────────────────────────────────────────── */

.mg-an-share { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 18px; }
.mg-an-share__h { margin: 0; font-size: 15px; font-weight: 800; color: #0d2b5c; }
.mg-an-share__redes { display: flex; flex-wrap: wrap; gap: 10px; }
.mg-an-share__btn {
	width: 44px; height: 44px;
	display: inline-flex; align-items: center; justify-content: center;
	padding: 0;
	border: 0;
	border-radius: 99px;
	color: #fff;
	text-decoration: none;
	cursor: pointer;
}
.mg-an-share__btn svg { width: 19px; height: 19px; }
.mg-an-share__btn:hover { filter: brightness(1.12); color: #fff; }
.mg-an-share__btn:focus-visible { outline: 2px solid #0d2b5c; outline-offset: 2px; }
.mg-an-share__btn--wa { background: #13804f; }
.mg-an-share__btn--fb { background: #1266d6; }
.mg-an-share__btn--in { background: #0a66c2; }
.mg-an-share__btn--x { background: #0d1117; }
.mg-an-share__btn--email { background: #3d4f6b; }
.mg-an-share__btn--link { background: #f1f5fa; color: #33496b; }
.mg-an-share__btn--link:hover { filter: none; background: #e4ebf4; color: #0d2b5c; }
.mg-an-share__btn--link.is-copied { background: #0a6b42; color: #fff; }
.mg-an-share__aviso { flex-basis: 100%; margin: 0; font-size: 12.5px; font-weight: 600; color: #0a6b42; }
.mg-an-share__aviso:empty { display: none; }

/* ── Lateral ────────────────────────────────────────────────────────────── */

.mg-an-fale__botoes { display: grid; gap: 10px; }
.mg-an-fale__dados { display: grid; gap: 11px; margin: 16px 0 0; padding: 16px 0 0; border-top: 1px solid #edf1f6; list-style: none; }
.mg-an-fale__dados li { display: flex; align-items: flex-start; gap: 10px; font-size: 13.5px; line-height: 1.5; color: #33496b; overflow-wrap: anywhere; min-width: 0; }
.mg-an-fale__dados .mg-an-ico { width: 16px; height: 16px; margin-top: 2px; color: #1266d6; }
@media (min-width: 768px) { .mg-an .mg-an-so-celular { display: none; } }

.mg-an-redes { display: grid; gap: 8px; margin: 0; padding: 0; list-style: none; }
.mg-an-rede {
	display: flex; align-items: center; gap: 11px;
	min-height: 48px;
	padding: 0 12px;
	border: 1px solid #e6ecf4;
	border-radius: 10px;
	color: #33496b;
	font-size: 14px; font-weight: 600;
	text-decoration: none;
}
.mg-an-rede:hover { border-color: #b9cfee; color: #0d47a6; }
.mg-an-rede:focus-visible { outline: 2px solid #1266d6; outline-offset: 2px; }
.mg-an-rede__icone {
	flex: none;
	width: 30px; height: 30px;
	display: inline-flex; align-items: center; justify-content: center;
	border-radius: 8px;
	background: #1266d6;
	color: #fff;
}
.mg-an-rede__icone svg { width: 16px; height: 16px; fill: currentColor; }
.mg-an-rede--instagram .mg-an-rede__icone { background: linear-gradient(135deg, #f58529, #dd2a7b 50%, #8134af); }
.mg-an-rede--facebook .mg-an-rede__icone { background: #1877f2; }
.mg-an-rede--linkedin .mg-an-rede__icone { background: #0a66c2; }
.mg-an-rede--youtube .mg-an-rede__icone { background: #c4302b; }
.mg-an-rede--x_twitter .mg-an-rede__icone, .mg-an-rede--tiktok .mg-an-rede__icone, .mg-an-rede--threads .mg-an-rede__icone { background: #111; }
.mg-an-rede__nome { flex: 1; min-width: 0; overflow-wrap: anywhere; }
.mg-an-rede__seta { width: 14px; height: 14px; color: #98a7bc; }

.mg-an-links ul { margin: 0; padding: 0; list-style: none; }
.mg-an-links li + li { border-top: 1px solid #edf1f6; }
.mg-an-links a { display: flex; align-items: center; gap: 10px; min-height: 46px; color: #33496b; font-size: 14px; font-weight: 600; text-decoration: none; }
.mg-an-links a > .mg-an-ico:first-child { width: 17px; height: 17px; color: #1266d6; }
.mg-an-links a span { flex: 1; }
.mg-an-links a:hover { color: #1266d6; }
.mg-an-links a:focus-visible { outline: 2px solid #1266d6; outline-offset: 2px; border-radius: 6px; }
.mg-an-links__seta { width: 14px; height: 14px; color: #98a7bc; }
@media (max-width: 1023px) { .mg-an-links { display: none; } }

.mg-an-horario__status { margin-bottom: 6px; }
.mg-an-horario__status .gcep-hours-chip {
	display: flex; align-items: center; gap: 8px;
	width: 100%;
	padding: 11px 13px;
	border-radius: 9px;
	font-size: 13px; font-weight: 700;
}
.mg-an-horario__status .gcep-hours-chip.is-open { background: #e9f7f0; color: #0a5c39; }
.mg-an-horario__status .gcep-hours-chip.is-closed { background: #f1f5fa; color: #33496b; }
.mg-an-horario .gcep-hours-row { padding-block: 9px; border-bottom: 1px solid #edf1f6; }
.mg-an-horario .gcep-hours-row:last-child { border-bottom: 0; }
.mg-an-horario .gcep-hours-day { color: #33496b; }
.mg-an-horario .gcep-hours-toggle { min-height: 44px; }

.mg-an-cnpj { display: flex; align-items: center; gap: 12px; }
.mg-an-cnpj > .mg-an-ico { width: 22px; height: 22px; color: #1266d6; }
.mg-an-cnpj p { display: grid; gap: 2px; margin: 0; }
.mg-an-cnpj__rotulo { font-size: 12px; font-weight: 700; color: #52678a; }
.mg-an-cnpj__valor { font-size: 14px; font-weight: 700; color: #0d2b5c; }

.mg-an-claim { display: flex; align-items: flex-start; gap: 12px; background: #eef5fe; border-color: #d3e3f8; }
.mg-an-claim__ico { width: 22px; height: 22px; color: #1266d6; }
.mg-an-claim__h { margin: 0 0 4px; font-size: 15px; font-weight: 800; color: #0d2b5c; }
.mg-an-claim p { margin: 0 0 12px; font-size: 13.5px; line-height: 1.5; color: #33496b; }

/* Os botões que os addons põem na lateral repetem os links rápidos: aqui ficam fora. */
.mg-an-lado .ppgw-sidebar-cta,
.mg-an-lado .gvag-sidebar-cta,
.mg-an-lado .gwpc-sidebar-cta,
.mg-an-lado .gcep-blog-cta { display: none; }

/* ── Módulos dos addons na coluna principal ─────────────────────────────── */

.mg-an-principal .ppgw-banners,
.mg-an-principal .ppgw-produtos,
.mg-an-principal .gvag-section,
.mg-an-principal .gwpc-carrossel,
.mg-an-principal .avgw,
.mg-an-principal .gcep-faq-ficha,
.mg-an-principal .gcep-blog-ficha,
.mg-an-principal .agd-public,
.mg-an-principal .spro-public-source {
	width: auto;
	max-width: none;
	margin-left: 0;
	margin-right: 0;
	padding: 18px;
	background: #fff;
	border: 1px solid #e1e8f2;
	border-radius: 14px;
	box-shadow: 0 1px 3px rgba(13, 43, 92, .05);
}
@media (min-width: 768px) {
	.mg-an-principal .ppgw-banners,
	.mg-an-principal .ppgw-produtos,
	.mg-an-principal .gvag-section,
	.mg-an-principal .gwpc-carrossel,
	.mg-an-principal .avgw,
	.mg-an-principal .gcep-faq-ficha,
	.mg-an-principal .gcep-blog-ficha,
	.mg-an-principal .agd-public { padding: 22px 24px; }
}
.mg-an-principal .ppgw-sec-head,
.mg-an-principal .gvag-section__header,
.mg-an-principal .gwpc-carrossel__header,
.mg-an-principal .gcep-blog-ficha__head,
.mg-an-principal .ppgw-banners__head { margin: 0 0 16px; align-items: flex-start; }
.mg-an-principal .ppgw-sec-title,
.mg-an-principal .gvag-section__titulo,
.mg-an-principal .gwpc-carrossel__titulo,
.mg-an-principal .avgw-title,
.mg-an-principal .gcep-faq-titulo--ficha,
.mg-an-principal .gcep-blog-ficha__titulo,
.mg-an-principal .agd-public .agd-public__h {
	display: block;
	margin: 0;
	font: 800 19px/1.25 Inter, system-ui, sans-serif;
	letter-spacing: -.015em;
	color: #0d2b5c;
}
.mg-an-principal .avgw-title,
.mg-an-principal .gcep-faq-titulo--ficha { margin-bottom: 16px; }
.mg-an-principal .ppgw-sec-title::after,
.mg-an-principal .gvag-section__titulo::after,
.mg-an-principal .gwpc-carrossel__titulo::after,
.mg-an-principal .avgw-title::after,
.mg-an-principal .gcep-faq-titulo--ficha::after,
.mg-an-principal .gcep-blog-ficha__titulo::after,
.mg-an-principal .agd-public .agd-public__h::after { content: ""; display: block; width: 32px; height: 3px; margin-top: 9px; border-radius: 99px; background: #1266d6; }
.mg-an-principal .ppgw-sec-title .material-symbols-outlined,
.mg-an-principal .gvag-section__titulo .material-symbols-outlined,
.mg-an-principal .gwpc-carrossel__titulo .material-symbols-outlined,
.mg-an-principal .ppgw-sec-count,
.mg-an-principal .gvag-section__contador { display: none; }

/* Produtos em grade (modo "produtos"): card compacto, foto, nome e preço. */
.mg-an-principal .ppgw-produtos:not(.ppgw-cardapio) .ppgw-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
@media (min-width: 768px) { .mg-an-principal .ppgw-produtos:not(.ppgw-cardapio) .ppgw-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; } }
@media (min-width: 1280px) { .mg-an-principal .ppgw-produtos:not(.ppgw-cardapio) .ppgw-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.mg-an-principal .ppgw-grid .ppgw-card { border: 1px solid #e6ecf4; border-radius: 12px; box-shadow: none; }
.mg-an-principal .ppgw-grid .ppgw-card:focus-visible { outline: 2px solid #1266d6; outline-offset: 2px; }
.mg-an-principal .ppgw-grid .ppgw-card__titulo { font-size: 14px; color: #0d2b5c; }
.mg-an-principal .ppgw-grid .ppgw-card__preco-now { color: #0a6b42; }

/* Perguntas frequentes (GCEP_Faq): acordeão em cartões. */
.mg-an-principal .gcep-faq { display: grid; gap: 8px; border-top: 0; }
.mg-an-principal .gcep-faq__item { border: 1px solid #e1e8f2; border-radius: 10px; background: #fff; }
.mg-an-principal .gcep-faq__pergunta {
	position: relative;
	min-height: 48px;
	align-items: center;
	padding: 12px 46px 12px 14px;
	font-size: 14px; line-height: 1.4;
	color: #0d2b5c;
}
.mg-an-principal .gcep-faq__pergunta::after { position: absolute; right: 18px; top: 50%; margin-top: -6px; border-color: #52678a; }
.mg-an-principal .gcep-faq__item[open] .gcep-faq__pergunta::after { margin-top: -2px; }
.mg-an-principal .gcep-faq__pergunta:focus-visible { outline: 2px solid #1266d6; outline-offset: -2px; border-radius: 10px; }
.mg-an-principal .gcep-faq__resposta { padding: 0 14px 14px; font-size: 14px; line-height: 1.7; color: #33496b; }

/* No blog: cards do blog (mg-pcard) em três colunas. */
.mg-an-principal .gcep-blog-ficha__todos { display: inline-flex; align-items: center; min-height: 44px; color: #0d4fa8; }
.mg-an-principal .mg-an-blog { display: grid; grid-template-columns: minmax(0, 1fr); gap: 14px; }
@media (min-width: 640px) { .mg-an-principal .mg-an-blog { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1280px) { .mg-an-principal .mg-an-blog { grid-template-columns: repeat(3, minmax(0, 1fr)); } }

/* Cupons e banners: só a casca; o carrossel continua o do addon. */
.mg-an-principal .gwpc-cupom { border-radius: 12px; }
.mg-an-principal .ppgw-banner { border-radius: 12px; overflow: hidden; }

/* Avaliações (avaliacoes-guiawp). */
.mg-an-principal .avgw-summary {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 16px;
	margin: 0 0 16px;
	padding: 16px;
	border: 1px solid #e6ecf4;
	border-radius: 12px;
	background: #fff;
}
@media (min-width: 560px) { .mg-an-principal .avgw-summary { grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: 24px; } }
.mg-an-principal .avgw-summary__score { display: grid; justify-items: center; gap: 6px; text-align: center; }
.mg-an-principal .avgw-summary__media { font-size: 38px; font-weight: 800; line-height: 1; color: #0d2b5c; }
.mg-an-principal .avgw-summary__total { font-size: 12.5px; color: #52678a; }
.mg-an-principal .avgw-star--on { color: #f5a524; }
.mg-an-principal .avgw-dist__row { min-height: 44px; }
.mg-an-principal .avgw-removal-open { min-height: 44px; }
.mg-an-principal .avgw-dist__label, .mg-an-principal .avgw-dist__count { font-size: 12px; color: #52678a; }
.mg-an-principal .avgw-dist__bar { height: 6px; border-radius: 99px; background: #edf1f6; }
.mg-an-principal .avgw-dist__fill { border-radius: 99px; background: #f5a524; }
.mg-an-principal .avgw-item { border: 1px solid #e6ecf4; border-radius: 12px; box-shadow: none; }
.mg-an-principal .avgw-more,
.mg-an-principal .avgw-escrever {
	display: inline-flex; align-items: center; justify-content: center;
	min-height: 46px;
	padding: 0 18px;
	border-radius: 9px;
	font: 700 14px/1 Inter, system-ui, sans-serif;
	cursor: pointer;
}
.mg-an-principal .avgw-more { border: 1px solid #d3e3f8; background: #fff; color: #0d4fa8; }
.mg-an-principal .avgw-escrever { margin-top: 12px; border: 0; background: #1266d6; color: #fff; }
.mg-an-principal .avgw-escrever:hover { background: #0d47a6; }
.mg-an-principal .avgw-escrever:focus-visible,
.mg-an-principal .avgw-more:focus-visible { outline: 2px solid #0d2b5c; outline-offset: 2px; }
.mg-an-principal .avgw-form { margin-top: 16px; padding: 16px; border: 1px solid #e6ecf4; border-radius: 12px; }

/* Agendamento (agendamento-guiawp): a casca; o modal é do addon. */
.mg-an-principal .agd-public { margin: 0; font-size: 15px; }
.mg-an-principal .agd-booking-toggle { width: auto; }
@media (max-width: 600px) { .mg-an-principal .agd-booking-toggle { width: 100%; } }

/* ── Relacionados (só grátis) e chamada para anunciar ───────────────────── */

.mg-an-relacionados { margin-top: 28px; }
.mg-an-rel { display: grid; grid-template-columns: minmax(0, 1fr); gap: 14px; margin: 0; padding: 0; list-style: none; }
@media (min-width: 640px) { .mg-an-rel { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1024px) { .mg-an-rel { grid-template-columns: repeat(4, minmax(0, 1fr)); } }

.mg-an-cta {
	margin-top: 28px;
	display: flex; flex-direction: column; gap: 16px;
	padding: 22px;
	border-radius: 16px;
	background: var(--mg-marinho, #0d2b5c); /* etapa 3 (T2): sem degradê */
	color: #fff;
}
.mg-an-cta__h { margin: 0 0 8px; font-size: 20px; font-weight: 800; line-height: 1.25; letter-spacing: -.015em; color: #fff; }
.mg-an-cta p { margin: 0; max-width: 540px; font-size: 14px; line-height: 1.55; color: #fff; }
@media (min-width: 768px) {
	.mg-an-cta { flex-direction: row; align-items: center; justify-content: space-between; gap: 30px; padding: 30px 34px; }
	.mg-an-cta__h { font-size: 22px; }
}

/* ── Barra fixa do celular ──────────────────────────────────────────────── */

.mg-an-barra { display: none; }
@media (max-width: 1023px) {
	.mg-an-barra {
		position: fixed;
		left: 0; right: 0; bottom: 0;
		z-index: 900;
		display: grid;
		grid-auto-flow: column;
		grid-auto-columns: minmax(0, 1fr);
		gap: 9px;
		padding: 10px 12px calc(10px + env(safe-area-inset-bottom, 0px));
		background: #fff;
		box-shadow: 0 -2px 14px rgba(13, 43, 92, .12);
	}
	.mg-an-barra .mg-an-btn { min-height: 48px; padding: 0 10px; }
	/* Espaço no fim da página para a barra não cobrir o rodapé. */
	body:has(.mg-an-barra:not([hidden])) { padding-bottom: 72px; }
}
/* Etapa 9: abaixo de 768px a faixa fica logo acima da barra de abas. */
@media (max-width: 767px) {
	body.mg-com-abas .mg-an-barra { bottom: calc(var(--mg-abas-h, 64px) + env(safe-area-inset-bottom, 0px)); padding-bottom: 10px; }
	body.mg-com-abas:has(.mg-an-barra:not([hidden])) { padding-bottom: calc(var(--mg-abas-h, 64px) + 68px + env(safe-area-inset-bottom, 0px)); }
}

/* ── Lightbox ───────────────────────────────────────────────────────────── */

.mg-an-lb {
	position: fixed; inset: 0; z-index: 99999;
	display: flex; align-items: center; justify-content: center;
	padding: 56px 12px;
	background: rgba(8, 14, 24, .94);
	font-family: Inter, system-ui, sans-serif;
}
.mg-an-lb[hidden] { display: none; }
.mg-an-lb__corpo img { display: block; max-width: min(92vw, 1400px); max-height: 80vh; border-radius: 8px; object-fit: contain; }
.mg-an-lb button { border: 0; cursor: pointer; color: #fff; }
.mg-an-lb button:focus-visible { outline: 3px solid #fff; outline-offset: 2px; }
.mg-an-lb__fechar { position: absolute; top: 8px; right: 10px; width: 48px; height: 48px; background: none; font-size: 38px; line-height: 1; }
.mg-an-lb__nav {
	position: absolute; top: 50%; transform: translateY(-50%);
	width: 48px; height: 48px;
	display: flex; align-items: center; justify-content: center;
	border-radius: 99px;
	background: rgba(255, 255, 255, .18);
}
.mg-an-lb__nav .mg-an-ico { width: 24px; height: 24px; stroke-width: 2.4; }
.mg-an-lb__nav .mg-an-ico--vira { transform: rotate(180deg); }
.mg-an-lb__nav:hover { background: rgba(255, 255, 255, .3); }
.mg-an-lb__nav--ant { left: 8px; }
.mg-an-lb__nav--prox { right: 8px; }
.mg-an-lb__conta { position: absolute; bottom: 14px; left: 50%; transform: translateX(-50%); margin: 0; padding: 5px 12px; border-radius: 99px; background: rgba(255, 255, 255, .18); color: #fff; font-size: 13px; font-weight: 700; }

@media (prefers-reduced-motion: reduce) {
	.mg-an-btn, .mg-an-heroi__mini img { transition: none; }
	.mg-an-heroi__mini:hover img { transform: none; }
	.mg-an-videos__faixa { scroll-behavior: auto; }
}
@media print {
	.mg-an-barra, .mg-an-heroi__acoes, .mg-an-share, .mg-an-abas, .mg-an-cta { display: none !important; }
}

/* == Correção da auditoria, etapa 3 (2026-09-14) ================================================ */

/* A3 - card de produto na ficha: foto de 104px, nome 13px, resumo em uma linha, preço; sem o selo
   genérico "Produto" (sai no PHP) e sem "Ver produto" (o card inteiro abre o modal). */
.mg-an-principal .ppgw-grid .ppgw-card { border: 1px solid var(--mg-borda, #e6ecf4); border-radius: 12px; box-shadow: none; transition: border-color .15s ease, background-color .15s ease; }
.mg-an-principal .ppgw-grid .ppgw-card:hover { border-color: var(--mg-borda-hover, #b9cfee); box-shadow: none; }
.mg-an-principal .ppgw-grid .ppgw-card:active { background: var(--mg-ativo-fundo, #e4eefc); }
.mg-an-principal .ppgw-grid .ppgw-card__foto { aspect-ratio: auto; height: 104px; background: #eef5fe; }
.mg-an-principal .ppgw-grid .ppgw-card__foto-ph { background: #eef5fe; color: var(--mg-separador, #98a7bc); }
.mg-an-principal .ppgw-grid .ppgw-card__body { padding: 13px; }
.mg-an-principal .ppgw-grid .ppgw-card__titulo { margin: 0; font: 700 13px/1.3 Inter, system-ui, sans-serif; color: var(--mg-marinho, #0d2b5c); }
.mg-an-principal .ppgw-grid .ppgw-card:hover .ppgw-card__titulo { color: var(--mg-azul-hover, #0d47a6); }
.mg-an-principal .ppgw-grid .ppgw-card__resumo { margin: 4px 0 0; font-size: 12px; line-height: 1.45; color: var(--mg-texto-2, #52678a); -webkit-line-clamp: 1; line-clamp: 1; }
.mg-an-principal .ppgw-grid .ppgw-card__preco { margin: 8px 0 0; gap: 6px; }
.mg-an-principal .ppgw-grid .ppgw-card__preco-now { font: 800 14px/1 Inter, system-ui, sans-serif; color: #0a6b42; }
.mg-an-principal .ppgw-grid .ppgw-card__preco-old { font-size: 12px; color: var(--mg-texto-2, #52678a); }
.mg-an-principal .ppgw-grid .ppgw-card__entrega { margin: 8px 0 0; }
.mg-an-principal .ppgw-grid .ppgw-entrega__item { background: var(--mg-suave, #f1f5fa); color: var(--mg-texto, #33496b); font-size: 11px; }
.mg-an-principal .ppgw-grid .ppgw-entrega__item .material-symbols-outlined { color: var(--mg-azul, #1266d6); }
.mg-an-principal .ppgw-grid .ppgw-card__rodape { display: none; }
.mg-an-principal .ppgw-grid .ppgw-card__selo { top: 8px; left: 8px; padding: 5px 8px; border-radius: 99px; font: 700 10.5px/1.2 Inter, system-ui, sans-serif; box-shadow: none; }
.mg-an-principal .ppgw-grid .ppgw-card__selo--promo { background: #ff7a00; color: var(--mg-marinho, #0d2b5c); }
.mg-an-principal .ppgw-grid .ppgw-card__selo--grupo { background: #fff; color: #0d4fa8; }
.mg-an-principal .ppgw-grid .ppgw-card__play { color: #fff; }
.mg-an-principal .ppgw-grid .ppgw-card__play svg { box-sizing: content-box; padding: 8px; border-radius: 99px; background: rgba(13, 43, 92, .6); }
.mg-an-principal .ppgw-banners__head .ppgw-sec-title { margin-bottom: 0; }
.mg-an-principal .ppgw-arrow { width: 44px; height: 44px; border-color: var(--mg-borda-campo, #e1e8f2); color: var(--mg-texto, #33496b); }
.mg-an-principal .ppgw-arrow:hover { background: var(--mg-suave, #f1f5fa); border-color: var(--mg-borda-hover, #b9cfee); color: var(--mg-marinho, #0d2b5c); }
.mg-an-principal .ppgw-arrow:active { transform: scale(var(--mg-ativo-escala, .97)); }
.mg-an-principal .ppgw-arrow:focus-visible { outline: 2px solid var(--mg-azul, #1266d6); outline-offset: 2px; }

/* A8 - horário na lateral: status em caixa, a semana inteira (gcep-hours.js não recolhe aqui) e o
   dia de hoje destacado. Fechado em tom de erro com contraste. */
.mg-an-horario__status .gcep-hours-chip.is-open { background: #e9f7f0; color: #0a6b42; }
.mg-an-horario__status .gcep-hours-chip.is-closed { background: var(--mg-erro-fundo, #fef3f2); color: var(--mg-erro, #b42318); }
.mg-an-horario__status .gcep-hours-dot { width: 6px; height: 6px; }
.mg-an-horario__status .gcep-hours-chip.is-open .gcep-hours-dot { background: #22b573; }
.mg-an-horario .gcep-hours-list { gap: 0; }
.mg-an-horario .gcep-hours-row { align-items: center; justify-content: space-between; gap: 10px; padding: 9px 8px; border-radius: 0; }
.mg-an-horario .gcep-hours-day { flex: 0 0 auto; padding: 0; font-size: 13px; font-weight: 600; letter-spacing: 0; color: var(--mg-texto, #33496b); }
.mg-an-horario .gcep-hours-times { flex: 0 1 auto; justify-content: flex-end; gap: 2px 8px; }
.mg-an-horario .gcep-hours-pill { padding: 0; background: none; box-shadow: none; font-size: 13px; font-weight: 500; color: var(--mg-texto-2, #52678a); }
.mg-an-horario .gcep-hours-pill.is-24h { background: none; color: #0a6b42; font-weight: 600; }
.mg-an-horario .gcep-hours-closed { padding: 0; font-size: 13px; font-style: normal; font-weight: 600; color: var(--mg-texto-2, #52678a); }
.mg-an-horario .gcep-hours-row.gcep-hours-today { border-radius: 8px; border-bottom-color: transparent; background: #eef5fe; }
.mg-an-horario .gcep-hours-row.gcep-hours-today .gcep-hours-day,
.mg-an-horario .gcep-hours-row.gcep-hours-today .gcep-hours-pill,
.mg-an-horario .gcep-hours-row.gcep-hours-today .gcep-hours-closed { background: none; box-shadow: none; color: #0d4fa8; font-weight: 700; }
.mg-an-horario .gcep-hours-feriado-rule { margin-top: 10px; padding-top: 10px; border-top-color: #edf1f6; font-size: 12.5px; color: var(--mg-texto-2, #52678a); }

/* A9 - avaliações: a partir de 1280px, resumo (média, total e distribuição) | avaliação mais recente, e
   a lista embaixo. A lista vira `display: contents` para o primeiro item entrar na grade da seção sem
   mudar a marcação (o filtro e o "Ver mais" continuam escrevendo na mesma lista). Abaixo, empilhado. */
.mg-an-principal .avgw { color: var(--mg-texto, #33496b); }
.mg-an-principal .avgw-summary { border-color: var(--mg-borda, #e6ecf4); }
.mg-an-principal .avgw-summary__score .avgw-star { font-size: 14px; }
.mg-an-principal .avgw-summary__score .avgw-stars { gap: 2px; }
.mg-an-principal .avgw-dist { gap: 0; }
.mg-an-principal .avgw-dist__label { gap: 3px; }
.mg-an-principal .avgw-dist__label .avgw-star { font-size: 11px; }
.mg-an-principal .avgw-dist__row:hover { background: var(--mg-suave, #f1f5fa); }
.mg-an-principal .avgw-dist__row:active { background: var(--mg-ativo-fundo, #e4eefc); }
.mg-an-principal .avgw-dist__row.is-active { background: #eaf2fd; }
.mg-an-principal .avgw-dist__row:focus-visible { outline: 2px solid var(--mg-azul, #1266d6); outline-offset: -2px; }
.mg-an-principal .avgw-item { padding: 18px; }
.mg-an-principal .avgw-item__avatar { width: 36px; height: 36px; font-size: 14px; }
.mg-an-principal .avgw-item__name { font-size: 13.5px; }
.mg-an-principal .avgw-item__text { font-size: 13.5px; line-height: 1.7; color: var(--mg-texto, #33496b); }
.mg-an-principal .avgw-more:hover { background: var(--mg-suave, #f1f5fa); border-color: var(--mg-borda-hover, #b9cfee); color: var(--mg-azul-hover, #0d47a6); }
.mg-an-principal .avgw-more:active,
.mg-an-principal .avgw-escrever:active { transform: scale(var(--mg-ativo-escala, .97)); }
@media (min-width: 1280px) {
	.mg-an-principal .avgw { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.3fr); column-gap: 16px; align-items: start; }
	.mg-an-principal .avgw > * { grid-column: 1 / -1; }
	.mg-an-principal .avgw > .avgw-summary { grid-column: 1; grid-row: 2; align-self: stretch; margin: 0; grid-template-columns: auto minmax(0, 1fr); gap: 20px; padding: 20px; }
	.mg-an-principal .avgw-list { display: contents; }
	.mg-an-principal .avgw-list > :first-child { grid-column: 2; grid-row: 2; align-self: stretch; margin: 0; }
	.mg-an-principal .avgw-list > :nth-child(n+2) { margin-top: 12px; }
	.mg-an-principal .avgw-list > .avgw-empty:first-child { display: flex; align-items: center; justify-content: center; padding: 20px; border: 1px solid var(--mg-borda, #e6ecf4); border-radius: 12px; }
}

/* T7/T3/T5 - modal "Reivindicar anúncio": rótulos sem caixa alta, cores da paleta, fechar em SVG. */
#gcep-claim-modal.mg-an-claim-modal { background: rgba(13, 43, 92, .55); font-family: Inter, system-ui, sans-serif; }
.mg-an-claim-caixa { position: relative; width: 100%; max-width: 470px; max-height: 92vh; overflow-y: auto; padding: 24px; border-radius: 14px; background: #fff; box-shadow: 0 24px 48px -12px rgba(13, 43, 92, .35); color: #33496b; }
.mg-an-claim-topo { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; margin-bottom: 18px; }
.mg-an-claim-titulo { margin: 0 0 4px; font-size: 20px; font-weight: 800; line-height: 1.25; color: #0d2b5c; }
.mg-an-claim-sub { margin: 0; font-size: 13.5px; line-height: 1.55; color: #52678a; }
.mg-an-claim-x { position: relative; flex: none; width: 44px; height: 44px; margin: -8px -8px 0 0; display: inline-flex; align-items: center; justify-content: center; padding: 0; border: 0; border-radius: 99px; background: none; color: #33496b; cursor: pointer; }
.mg-an-claim-x::before { content: ""; position: absolute; inset: 7px; border-radius: 99px; background: #f1f5fa; transition: background-color .15s ease; }
.mg-an-claim-x svg { position: relative; }
.mg-an-claim-x:hover { color: #0d2b5c; }
.mg-an-claim-x:hover::before { background: #e6ecf4; }
.mg-an-claim-x:active::before { background: #dde6f1; }
.mg-an-claim-x:focus-visible { outline: 2px solid #0d2b5c; outline-offset: -3px; }
.mg-an-claim-form { display: grid; gap: 14px; }
.mg-an-claim-campo { display: flex; flex-direction: column; gap: 6px; }
.mg-an-claim-rotulo { font-size: 13px; font-weight: 700; color: #33496b; }
.mg-an-claim-obrig { color: var(--mg-erro, #b42318); }
.mg-an-claim-input { width: 100%; min-height: 46px; padding: 11px 12px; border: 1px solid #e1e8f2; border-radius: 10px; background: #fff; font: 400 14px/1.4 Inter, system-ui, sans-serif; color: #0d2b5c; }
.mg-an-claim-input::placeholder { color: #52678a; opacity: 1; }
.mg-an-claim-input:hover { border-color: #b9cfee; }
.mg-an-claim-input:focus-visible { outline: 2px solid #1266d6; outline-offset: 1px; border-color: #1266d6; }
textarea.mg-an-claim-input { resize: vertical; }
.mg-an-claim-aviso { margin: 0; padding: 11px 13px; border-radius: 9px; font-size: 13.5px; font-weight: 600; }
.mg-an-claim-aviso--erro { background: var(--mg-erro-fundo, #fef3f2); color: var(--mg-erro, #b42318); }
.mg-an-claim-aviso--ok { background: #e9f7f0; color: #0a6b42; }
.mg-an-claim-acoes { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 10px; padding-top: 4px; }
@media (max-width: 379px) { .mg-an-claim-acoes .mg-an-btn { flex: 1 1 100%; } }
.mg-an-btn:disabled { opacity: .6; cursor: default; }

/* T5 - estados que faltavam nos clicáveis da ficha. */
.mg-an-btn:not(:disabled):active { transform: scale(var(--mg-ativo-escala, .97)); }
.mg-an-btn--verde:active { filter: brightness(.94); }
.mg-an-heroi__abrir img { transition: filter .15s ease; }
.mg-an-heroi__abrir:hover img { filter: brightness(1.04); }
.mg-an-heroi__abrir:active img { filter: brightness(.96); }
.mg-an-heroi__btn:active, .mg-an-heroi .mg-salvar--icone:active { transform: scale(var(--mg-ativo-escala, .97)); }
.mg-an-heroi__todas:hover { background: var(--mg-suave, #f1f5fa); color: var(--mg-azul-hover, #0d47a6); }
.mg-an-heroi__todas:active { transform: scale(var(--mg-ativo-escala, .97)); }
.mg-an-mais:hover { color: var(--mg-azul-hover, #0d47a6); text-decoration: underline; }
.mg-an-mais:active { color: var(--mg-marinho, #0d2b5c); }
.mg-an-videos__mini:hover { border-color: var(--mg-borda-hover, #b9cfee); }
.mg-an-videos__mini.is-active:hover { border-color: #1266d6; }
.mg-an-videos__mini:active { transform: scale(var(--mg-ativo-escala, .97)); }
.mg-an-videos__nav:hover { background: var(--mg-suave, #f1f5fa); border-color: var(--mg-borda-hover, #b9cfee); color: var(--mg-marinho, #0d2b5c); }
.mg-an-videos__nav:active { transform: scale(var(--mg-ativo-escala, .97)); }
.mg-an-lb__fechar { border-radius: 99px; }
.mg-an-lb__fechar:hover { background: rgba(255, 255, 255, .14); }
.mg-an-lb__fechar:active { background: rgba(255, 255, 255, .24); }
.mg-an-lb__nav:active { background: rgba(255, 255, 255, .38); }
.mg-an-principal .gcep-faq__pergunta:hover { color: var(--mg-azul-hover, #0d47a6); }
.mg-an-principal .gcep-faq__pergunta:active { background: var(--mg-ativo-fundo, #e4eefc); border-radius: 10px; }
.mg-an-chip:active, .mg-an-links a:active, .mg-an-rede:active { background: var(--mg-ativo-fundo, #e4eefc); }
.mg-an-share__btn:active { transform: scale(var(--mg-ativo-escala, .97)); }
@media (prefers-reduced-motion: reduce) {
	.mg-an-btn:not(:disabled):active, .mg-an-heroi__todas:active, .mg-an-videos__mini:active, .mg-an-videos__nav:active, .mg-an-share__btn:active { transform: none; }
}

/* ── Como chegar e compartilhar no card do nome (2.5.455, 16/09/2026) ─────────────────────────
   Pedido do dono com uma referência: botão azul "Como chegar", o rótulo COMPARTILHAR e cinco
   círculos de contorno (WhatsApp, Facebook, LinkedIn, X, Copiar link). No computador é a coluna da
   direita do card; abaixo de 768px desce para baixo do nome, na largura toda. */
.mg-an-id { flex-wrap: wrap; }
.mg-an-id__acoes {
	flex: 1 1 100%;
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 10px;
	padding-top: 14px;
	border-top: 1px solid #e6ecf4;
}
.mg-an-id__acoes:focus { outline: none; }
.mg-an-id__rota {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 9px;
	min-height: 48px;
	padding: 0 22px;
	border-radius: 12px;
	background: #1266d6;
	color: #fff;
	font-size: 15px;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
	box-shadow: 0 6px 16px rgba(18, 102, 214, .25);
	transition: background-color .15s ease, transform .1s ease;
}
.mg-an-id__rota .mg-an-ico { width: 18px; height: 18px; color: #fff; }
.mg-an-id__rota:hover { background: #0d47a6; color: #fff; }
.mg-an-id__rota:focus-visible { outline: 2px solid #0d2b5c; outline-offset: 2px; }
.mg-an-id__rota:active { transform: scale(.97); }
.mg-an-id__share-h { margin: 4px 0 0; font-size: 11px; font-weight: 700; line-height: 1; letter-spacing: .12em; text-transform: uppercase; color: #52678a; }
.mg-an-id__acoes .mg-an-share__redes { gap: 8px; }
.mg-an-id__acoes .mg-an-share__btn {
	width: 44px;
	height: 44px;
	background: #fff;
	border: 1px solid #cbd5e1;
	color: #33496b;
	transition: border-color .15s ease, color .15s ease, background-color .15s ease;
}
.mg-an-id__acoes .mg-an-share__btn svg,
.mg-an-id__acoes .mg-an-share__btn .mg-an-ico { width: 18px; height: 18px; }
.mg-an-id__acoes .mg-an-share__btn:hover { filter: none; border-color: #1266d6; color: #1266d6; background: #fff; }
.mg-an-id__acoes .mg-an-share__btn--link.is-copied { background: #0a6b42; border-color: #0a6b42; color: #fff; }
.mg-an-id__acoes .mg-an-share__aviso { margin: 0; }

@media (min-width: 768px) {
	.mg-an-id { flex-wrap: nowrap; align-items: center; }
	.mg-an-id__acoes {
		flex: none;
		align-items: flex-end;
		padding: 0 0 0 20px;
		border-top: 0;
		border-left: 1px solid #e6ecf4;
	}
	.mg-an-id__share-h { text-align: right; }
	.mg-an-id__acoes .mg-an-share__redes { justify-content: flex-end; flex-wrap: nowrap; }
	.mg-an-id__acoes .mg-an-share__btn { width: 40px; height: 40px; }
	.mg-an-id__acoes .mg-an-share__aviso { text-align: right; }
}
@media (prefers-reduced-motion: reduce) { .mg-an-id__rota { transition: none; } }
/* Só os cinco que o dono escolheu: o botão nativo que o redes-guiawp encosta no "Copiar link" fica de fora. */
.mg-an-id__acoes .rgw-share-native { display: none !important; }

/* 2.5.455: herói de uma foto só, na largura toda. Com `aspect-ratio` + `max-height` o navegador
   encolhia a LARGURA para manter a proporção (1102px em vez de 1352px); a largura fixa manda,
   e a altura para em 420px. Medida no computador (tela de 1440): 1352 × 420. */
@media (min-width: 768px) {
	.mg-an-heroi__principal { width: 100%; }
}

/* ── 2.5.456 (16/09/2026): Como chegar e compartilhar mais discretos ─────────────────────────
   O dono achou que chamava atenção demais: botão azul cheio com sombra, ao lado do WhatsApp verde da
   lateral. Agora é botão claro de contorno azul, sem sombra, e os círculos do compartilhar ficam
   menores (34px no computador; no celular 40px, para o dedo). */
.mg-an-id__rota {
	min-height: 40px;
	padding: 0 16px;
	gap: 7px;
	border: 1px solid #c9dcf5;
	border-radius: 10px;
	background: #eef5fe;
	color: #0d4fa8;
	font-size: 14px;
	font-weight: 700;
	box-shadow: none;
}
.mg-an-id__rota .mg-an-ico { width: 16px; height: 16px; color: #1266d6; }
.mg-an-id__rota:hover { background: #e2eefc; border-color: #1266d6; color: #0d47a6; }
.mg-an-id__share-h { font-size: 10.5px; letter-spacing: .1em; color: #6b7f9c; }
.mg-an-id__acoes { gap: 8px; }
.mg-an-id__acoes .mg-an-share__redes { gap: 6px; }
.mg-an-id__acoes .mg-an-share__btn { width: 40px; height: 40px; border-color: #dbe3ee; color: #52678a; }
.mg-an-id__acoes .mg-an-share__btn svg,
.mg-an-id__acoes .mg-an-share__btn .mg-an-ico { width: 16px; height: 16px; }
@media (min-width: 768px) {
	.mg-an-id__acoes .mg-an-share__btn { width: 34px; height: 34px; }
	.mg-an-id__acoes .mg-an-share__btn svg,
	.mg-an-id__acoes .mg-an-share__btn .mg-an-ico { width: 15px; height: 15px; }
}

/* ── 2.5.456: redes com o desenho da marca e o perfil escrito ─────────────────────────────── */
.mg-an-rede__icone svg { fill: none; stroke: currentColor; stroke-width: 2; }
.mg-an-rede__icone svg[data-cheio] { stroke: none; }
.mg-an-rede__nome { display: flex; flex-direction: column; gap: 2px; line-height: 1.25; }
.mg-an-rede__perfil { font-size: 12.5px; font-weight: 500; color: #52678a; overflow-wrap: anywhere; }
.mg-an-rede--threads .mg-an-rede__icone { background: #000; }

/* ── Bloco inicial do celular (2.5.457) ─────────────────────────────────────
   16/09/2026 - Valoar: o topo com cara de aplicativo, na referência aprovada pelo dono (Clínica Vida
   Saúde). Um cartão branco só: foto, identidade, resumo em três colunas, três ações principais, três
   secundárias e o card de agendamento. Até 767px ele substitui o herói e o card de identidade; de 768px
   para cima some e os dois voltam. Partial: templates/partials/anuncio-topo.php. */

.mg-an-topo { display: none; }

@media (max-width: 767.98px) {
	.mg-an-heroi,
	.mg-an-principal > .mg-an-id { display: none; }

	.mg-an-topo {
		display: block;
		padding: 8px;
		border: 1px solid #e6ecf4;
		border-radius: 20px;
		background: #fff;
		box-shadow: 0 2px 10px rgba(13, 43, 92, .06);
	}

	/* Foto */
	.mg-an-topo__foto {
		position: relative;
		overflow: hidden;
		aspect-ratio: 4 / 3;
		max-height: 300px;
		border-radius: 14px;
		background: #e9eef5;
	}
	.mg-an-topo__abrir { display: block; width: 100%; height: 100%; padding: 0; border: 0; background: none; cursor: zoom-in; }
	.mg-an-topo__abrir picture { display: block; width: 100%; height: 100%; }
	.mg-an-topo__img { display: block; width: 100%; height: 100%; object-fit: cover; }
	.mg-an-topo__abrir:focus-visible { outline: 3px solid #fff; outline-offset: -6px; }

	.mg-an-topo__partilha {
		position: absolute; top: 10px; right: 10px; z-index: 2;
		display: inline-flex; align-items: center; justify-content: center;
		width: 36px; height: 36px; padding: 0;
		border: 0; border-radius: 99px;
		background: rgba(255, 255, 255, .94);
		color: #0d2b5c;
		box-shadow: 0 1px 4px rgba(13, 43, 92, .18);
		cursor: pointer;
	}
	.mg-an-topo__partilha .mg-an-ico { width: 17px; height: 17px; }

	.mg-an-topo__conta {
		position: absolute; left: 10px; bottom: 10px; z-index: 2;
		display: inline-flex; align-items: center;
		height: 28px; padding: 0 10px;
		border-radius: 99px;
		background: rgba(13, 25, 45, .62);
		color: #fff;
		font-size: 12.5px; font-weight: 700; line-height: 1;
		font-variant-numeric: tabular-nums;
	}
	.mg-an-topo__todas {
		position: absolute; right: 10px; bottom: 10px; z-index: 2;
		display: inline-flex; align-items: center; gap: 6px;
		height: 34px; padding: 0 12px;
		border: 0; border-radius: 10px;
		background: #fff;
		color: #0d2b5c;
		font: 700 12.5px/1 Inter, system-ui, sans-serif;
		white-space: nowrap;
		box-shadow: 0 2px 8px rgba(13, 43, 92, .14);
		cursor: pointer;
	}
	.mg-an-topo__todas .mg-an-ico { width: 16px; height: 16px; color: #1266d6; }

	/* Identidade */
	.mg-an-topo__id { display: flex; align-items: center; gap: 14px; padding: 14px 6px 0; }
	.mg-an-topo__logo {
		display: flex; align-items: center; justify-content: center;
		flex: none;
		width: 78px; height: 78px;
		overflow: hidden;
		border-radius: 16px;
		background: #1266d6;
		color: #fff;
		font-size: 34px; font-weight: 800; line-height: 1;
	}
	.mg-an-topo__logo--img { border: 1px solid #e6ecf4; background: #fff; }
	.mg-an-topo__logo img { display: block; width: 100%; height: 100%; object-fit: cover; }
	.mg-an-topo__txt { min-width: 0; }
	.mg-an-topo__nome {
		display: flex; align-items: center; gap: 6px;
		margin: 0;
		font-size: 21px; font-weight: 800; line-height: 1.2; letter-spacing: -.02em;
		color: #0d2b5c;
	}
	.mg-an-topo__nome > span {
		display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2;
		overflow: hidden; min-width: 0;
	}
	.mg-an-topo__selo { flex: none; width: 20px; height: 20px; }
	.mg-an-topo__frase,
	.mg-an-topo__cat {
		margin: 3px 0 0;
		font-size: 14px; line-height: 1.35;
		color: #52678a;
		display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2;
		overflow: hidden;
	}
	.mg-an-topo__cat { margin-top: 1px; -webkit-line-clamp: 1; }

	/* Resumo: local | horário | nota */
	.mg-an-topo__info {
		display: flex;
		margin: 14px 0 0; padding: 12px 0 2px;
		border-top: 1px solid #eef2f7;
		list-style: none;
	}
	.mg-an-topo__dado {
		display: flex; align-items: flex-start; gap: 5px;
		flex: 1 1 auto; min-width: 0;
		margin: 0; padding: 0 6px;
	}
	.mg-an-topo__dado + .mg-an-topo__dado { border-left: 1px solid #e6ecf4; }
	.mg-an-topo__dado:first-child { padding-left: 2px; }
	.mg-an-topo__dado:last-child { padding-right: 0; }
	.mg-an-topo__nota { display: flex; align-items: flex-start; gap: 5px; min-width: 0; color: inherit; text-decoration: none; }
	.mg-an-topo__dico { flex: none; width: 18px; height: 18px; margin-top: 1px; }
	.mg-an-topo__dico--local { color: #1266d6; }
	.mg-an-topo__dico--hora { color: #13804f; }
	.mg-an-topo__dado--hora:has(.is-closed) .mg-an-topo__dico--hora { color: #98a7bc; }
	.mg-an-topo__dico--nota { color: #ff9f1a; width: 19px; height: 19px; }
	.mg-an-topo__dtxt { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
	.mg-an-topo__dtxt strong,
	.mg-an-topo__dtxt small,
	.mg-an-topo .gcep-hours-lbl,
	.mg-an-topo .gcep-hours-sub {
		display: block;
		overflow: hidden; white-space: nowrap; text-overflow: ellipsis;
	}
	.mg-an-topo__dtxt strong { font-size: 13px; font-weight: 700; line-height: 1.25; color: #0d2b5c; }
	.mg-an-topo__nota .mg-an-topo__dtxt strong { font-size: 15px; font-weight: 800; }
	.mg-an-topo__dtxt small { font-size: 11px; line-height: 1.25; color: #52678a; }

	/* O selo do horário aqui não é pílula: duas linhas de texto, como os vizinhos. */
	.mg-an-topo .gcep-hours-tag { display: block; min-width: 0; }
	.mg-an-topo .gcep-hours-chip {
		display: flex; flex-direction: column; align-items: flex-start; gap: 2px;
		min-width: 0; margin: 0; padding: 0;
		border: 0; border-radius: 0; background: none; box-shadow: none;
	}
	.mg-an-topo .gcep-hours-dot { display: none; }
	.mg-an-topo .gcep-hours-lbl { max-width: 100%; font-size: 13px; font-weight: 700; line-height: 1.25; color: #0a6b42; }
	.mg-an-topo .gcep-hours-chip.is-closed .gcep-hours-lbl { color: #0d2b5c; }
	.mg-an-topo .gcep-hours-sub { max-width: 100%; font-size: 11px; font-weight: 500; line-height: 1.25; color: #52678a; }

	/* Ações principais */
	.mg-an-topo__acoes,
	.mg-an-topo__sec {
		display: grid;
		grid-auto-flow: column;
		grid-auto-columns: minmax(0, 1fr);
		gap: 8px;
	}
	.mg-an-topo__acoes { margin-top: 14px; }
	.mg-an-topo__cta {
		display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 5px;
		min-width: 0; height: 64px; padding: 0 4px;
		border: 1px solid transparent; border-radius: 14px;
		font-size: 13.5px; font-weight: 700; line-height: 1.1;
		white-space: nowrap;
		text-decoration: none;
		transition: background-color .15s ease, transform .1s ease;
	}
	.mg-an-topo__cta .mg-an-ico { width: 22px; height: 22px; }
	.mg-an-topo__cta--whatsapp { background: #13804f; color: #fff; }
	.mg-an-topo__cta--whatsapp .mg-an-ico,
	.mg-an-topo__cta--ligar .mg-an-ico { fill: currentColor; stroke: none; }
	.mg-an-topo__cta--ligar { background: #1266d6; color: #fff; }
	.mg-an-topo__cta--rota { border-color: #d6e5fa; background: #eaf2fd; color: #0d4fa8; }
	.mg-an-topo__cta--whatsapp:hover { background: #0a6b42; color: #fff; }
	.mg-an-topo__cta--ligar:hover { background: #0d4fa8; color: #fff; }
	.mg-an-topo__cta--rota:hover { background: #dce8f8; color: #0d4fa8; }
	.mg-an-topo__cta:active,
	.mg-an-topo .mg-an-topo__secbtn:active,
	.mg-an-topo__destaque-btn:active { transform: scale(var(--mg-ativo-escala, .97)); }

	/* Ações secundárias */
	.mg-an-topo__sec { margin-top: 8px; }
	.mg-an-topo .mg-an-topo__secbtn {
		display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 5px;
		min-width: 0; height: 58px; min-height: 0; padding: 0 4px;
		border: 1px solid #e6ecf4; border-radius: 14px;
		background: #fff;
		color: #0d2b5c;
		font: 600 12.5px/1.1 Inter, system-ui, sans-serif;
		white-space: nowrap;
		text-decoration: none;
		cursor: pointer;
		transition: background-color .15s ease, transform .1s ease;
	}
	.mg-an-topo .mg-an-topo__secbtn:hover { background: #f5f8fc; color: #0d2b5c; }
	.mg-an-topo .mg-an-topo__secbtn .mg-an-ico,
	.mg-an-topo .mg-an-topo__secbtn .mg-salvar__svg { width: 20px; height: 20px; margin: 0; color: #1266d6; }
	.mg-an-topo .mg-an-topo__secbtn[aria-pressed="true"] .mg-salvar__svg { color: #c42f3b; }
	.mg-an-topo__cta:focus-visible,
	.mg-an-topo .mg-an-topo__secbtn:focus-visible,
	.mg-an-topo__partilha:focus-visible,
	.mg-an-topo__todas:focus-visible,
	.mg-an-topo__nota:focus-visible,
	.mg-an-topo__destaque-btn:focus-visible { outline: 3px solid #1266d6; outline-offset: 2px; }

	/* Destaque: o segundo recurso do anúncio */
	.mg-an-topo__destaque {
		margin-top: 12px; padding: 14px;
		border: 1px solid #dce8f8; border-radius: 16px;
		background: #eef5fe;
		box-shadow: 0 1px 3px rgba(13, 43, 92, .04);
	}
	.mg-an-topo__destaque-topo { display: flex; align-items: flex-start; gap: 12px; }
	.mg-an-topo__destaque-ico .mg-an-ico {
		flex: none; width: 44px; height: 44px;
		fill: none; stroke: #1266d6; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round;
	}
	.mg-an-topo__destaque-h { margin: 1px 0 0; font-size: 16.5px; font-weight: 800; line-height: 1.25; color: #0d2b5c; }
	.mg-an-topo__destaque-p { margin: 3px 0 0; font-size: 13.5px; line-height: 1.45; color: #33496b; }
	.mg-an-topo__destaque-btn {
		display: flex; align-items: center; justify-content: center;
		width: 100%; height: 50px; margin-top: 12px;
		border: 0; border-radius: 12px;
		background: #1266d6;
		color: #fff;
		font: 700 15px/1 Inter, system-ui, sans-serif;
		cursor: pointer;
		transition: background-color .15s ease, transform .1s ease;
	}
	.mg-an-topo__destaque-btn:hover { background: #0d4fa8; }
}

/* Telas estreitas (320-359px): a mesma estrutura, texto e respiro um pouco menores. */
@media (max-width: 359.98px) {
	.mg-an-topo__id { gap: 11px; padding-inline: 4px; }
	.mg-an-topo__logo { width: 64px; height: 64px; border-radius: 14px; font-size: 28px; }
	.mg-an-topo__nome { font-size: 18.5px; }
	.mg-an-topo__frase, .mg-an-topo__cat { font-size: 13px; }
	.mg-an-topo__dado { gap: 4px; padding-inline: 4px; }
	.mg-an-topo__dico { width: 16px; height: 16px; }
	.mg-an-topo__dico--nota { width: 17px; height: 17px; }
	.mg-an-topo__dtxt strong, .mg-an-topo .gcep-hours-lbl { font-size: 12px; }
	.mg-an-topo__nota .mg-an-topo__dtxt strong { font-size: 13.5px; }
	.mg-an-topo__dtxt small, .mg-an-topo .gcep-hours-sub { font-size: 10.5px; }
	.mg-an-topo__acoes, .mg-an-topo__sec { gap: 6px; }
	.mg-an-topo__cta { height: 58px; font-size: 12px; }
	.mg-an-topo .mg-an-topo__secbtn { height: 54px; font-size: 11.5px; }
	.mg-an-topo__todas { height: 32px; padding: 0 10px; font-size: 11.5px; }
	.mg-an-topo__destaque-ico .mg-an-ico { width: 38px; height: 38px; }
	.mg-an-topo__destaque-h { font-size: 15px; }
	.mg-an-topo__destaque-p { font-size: 12.5px; }
}

/* Resumo: o ícone só ao lado do valor; a linha de baixo usa a coluna inteira (em 390px "Morro do
   Chapéu/BA" e "Abre amanhã 08:00" não cabiam ao lado do ícone). */
@media (max-width: 767.98px) {
	.mg-an-topo__dado,
	.mg-an-topo__nota {
		display: grid;
		grid-template-columns: auto minmax(0, 1fr);
		align-items: center;
		column-gap: 5px;
		row-gap: 2px;
	}
	.mg-an-topo__dado:has(> .mg-an-topo__nota) { display: block; }
	.mg-an-topo__dtxt,
	.mg-an-topo .gcep-hours-tag,
	.mg-an-topo .gcep-hours-chip { display: contents; }
	.mg-an-topo__dico { grid-row: 1; grid-column: 1; margin: 0; }
	.mg-an-topo__dtxt strong,
	.mg-an-topo .gcep-hours-lbl { grid-row: 1; grid-column: 2; }
	.mg-an-topo__dtxt small,
	.mg-an-topo .gcep-hours-sub { grid-row: 2; grid-column: 1 / -1; }
}
@media (max-width: 359.98px) {
	.mg-an-topo__dtxt small,
	.mg-an-topo .gcep-hours-sub { white-space: normal; text-overflow: clip; line-height: 1.2; }
}

/* ── Bloco de topo, componente universal (2.5.457, segunda leva) ─────────────
   16/09/2026 - Valoar: os botões saem de GCEP_Anuncio_Topo (WhatsApp, Ligar e a ação específica do
   anúncio). A grade tem colunas iguais pelo número de botões: três dividem em terços, dois em metades,
   um ocupa a linha. Com dois ou um botão há espaço, e o ícone vai para o lado do nome.
   Verde do WhatsApp: #13804f, e não o #22B573 da marca, porque texto branco no #22B573 fica em 2,6:1
   e não passa no contraste mínimo (o mesmo tom já usado no resto do site). */

@media (max-width: 767.98px) {
	.mg-an-topo__cta--agendamento,
	.mg-an-topo__cta--orcamento,
	.mg-an-topo__cta--cardapio,
	.mg-an-topo__cta--produtos,
	.mg-an-topo__cta--vagas,
	.mg-an-topo__cta--reserva { border-color: #d6e5fa; background: #eaf2fd; color: #0d4fa8; }
	.mg-an-topo__cta--agendamento:hover,
	.mg-an-topo__cta--orcamento:hover,
	.mg-an-topo__cta--cardapio:hover,
	.mg-an-topo__cta--produtos:hover,
	.mg-an-topo__cta--vagas:hover,
	.mg-an-topo__cta--reserva:hover { background: #dce8f8; color: #0d4fa8; }
	.mg-an-topo__cta--orcamento .mg-an-ico { fill: none; stroke: currentColor; }

	.mg-an-topo__acoes[data-n="1"] .mg-an-topo__cta,
	.mg-an-topo__acoes[data-n="2"] .mg-an-topo__cta { flex-direction: row; gap: 8px; height: 52px; font-size: 14.5px; }

	/* Instagram */
	.mg-an-topo__insta {
		display: flex; align-items: center; gap: 12px;
		margin-top: 10px; padding: 10px 12px;
		border: 1px solid #e6ecf4; border-radius: 14px;
		background: #fff;
		color: #0d2b5c;
		text-decoration: none;
		transition: background-color .15s ease, transform .1s ease;
	}
	.mg-an-topo__insta:hover { background: #f5f8fc; color: #0d2b5c; }
	.mg-an-topo__insta:active { transform: scale(var(--mg-ativo-escala, .97)); }
	.mg-an-topo__insta:focus-visible { outline: 3px solid #1266d6; outline-offset: 2px; }
	.mg-an-topo__insta-ico {
		display: flex; align-items: center; justify-content: center;
		flex: none; width: 38px; height: 38px;
		border-radius: 11px;
		background: linear-gradient(45deg, #f9a825 0%, #e1306c 50%, #833ab4 100%);
		color: #fff;
	}
	.mg-an-topo__insta-ico svg { width: 21px; height: 21px; fill: none; stroke: currentColor; stroke-width: 2; }
	.mg-an-topo__insta-txt { display: flex; flex-direction: column; gap: 2px; flex: 1 1 auto; min-width: 0; }
	.mg-an-topo__insta-txt strong { font-size: 14px; font-weight: 700; line-height: 1.2; }
	.mg-an-topo__insta-txt small { overflow: hidden; font-size: 12.5px; line-height: 1.2; color: #52678a; white-space: nowrap; text-overflow: ellipsis; }
	.mg-an-topo__insta-seta { flex: none; width: 18px; height: 18px; color: #98a7bc; }

	/* Destaque */
	.mg-an-topo__destaque-ico { display: flex; flex: none; }
	.mg-an-topo__destaque-ico .mg-an-ico { width: 40px; height: 40px; color: #1266d6; stroke-width: 1.6; }
	.mg-an-topo__destaque-btn { text-decoration: none; }
	.mg-an-topo__destaque-btn:hover { color: #fff; }

	/* Secundárias: dois ou três botões */
	.mg-an-topo__sec { margin-top: 10px; }

	/* Folha "Mais ações" */
	.mg-an-folha {
		position: fixed; inset: auto 0 0 0;
		width: 100%; max-width: 100%; max-height: 80vh;
		margin: 0; padding: 0;
		border: 0; border-radius: 20px 20px 0 0;
		background: #fff;
		color: #0d2b5c;
		box-shadow: 0 -8px 30px rgba(13, 43, 92, .18);
	}
	.mg-an-folha::backdrop { background: rgba(13, 25, 45, .45); }
	.mg-an-folha[open] { animation: mg-an-folha-sobe .22s ease-out; }
	@keyframes mg-an-folha-sobe { from { transform: translateY(100%); } to { transform: none; } }
	@media (prefers-reduced-motion: reduce) { .mg-an-folha[open] { animation: none; } }
	.mg-an-folha__caixa { padding: 8px 16px calc(16px + env(safe-area-inset-bottom, 0px)); }
	.mg-an-folha__puxador { display: block; width: 40px; height: 4px; margin: 0 auto 8px; border-radius: 99px; background: #d5deea; }
	.mg-an-folha__topo { display: flex; align-items: center; justify-content: space-between; margin-bottom: 4px; }
	.mg-an-folha__h { margin: 0; font-size: 16px; font-weight: 800; }
	.mg-an-folha__x {
		display: inline-flex; align-items: center; justify-content: center;
		width: 44px; height: 44px; margin-right: -10px; padding: 0;
		border: 0; border-radius: 99px; background: none; color: #52678a; cursor: pointer;
	}
	.mg-an-folha__x:focus-visible { outline: 3px solid #1266d6; outline-offset: -3px; }
	.mg-an-folha__lista { margin: 0; padding: 0; list-style: none; }
	.mg-an-folha__lista li + li { border-top: 1px solid #eef2f7; }
	.mg-an-folha .mg-an-folha__item {
		display: flex; align-items: center; justify-content: flex-start; gap: 14px;
		width: 100%; min-height: 52px; padding: 0 4px;
		border: 0; border-radius: 10px;
		background: none;
		color: #0d2b5c;
		font: 600 15px/1.2 Inter, system-ui, sans-serif;
		text-align: left; text-decoration: none;
		cursor: pointer;
	}
	.mg-an-folha .mg-an-folha__item:hover { background: #f5f8fc; color: #0d2b5c; }
	.mg-an-folha .mg-an-folha__item:focus-visible { outline: 3px solid #1266d6; outline-offset: -3px; }
	.mg-an-folha .mg-an-folha__item svg,
	.mg-an-folha .mg-an-folha__item .mg-salvar__svg { flex: none; width: 21px; height: 21px; margin: 0; fill: none; stroke: currentColor; stroke-width: 1.9; color: #1266d6; }
	.mg-an-folha .mg-an-folha__item[aria-pressed="true"] .mg-salvar__svg { fill: currentColor; color: #c42f3b; }
}
@media (min-width: 768px) {
	.mg-an-folha { display: none; }
}
@media (max-width: 359.98px) {
	.mg-an-topo__destaque-ico .mg-an-ico { width: 34px; height: 34px; }
	.mg-an-topo__acoes[data-n="1"] .mg-an-topo__cta,
	.mg-an-topo__acoes[data-n="2"] .mg-an-topo__cta { font-size: 13.5px; }
}

/* ── Topo: ajuste pela prancha aprovada (16/09/2026) ────────────────────────
   Botões principais baixos, ícone ao lado do nome (WhatsApp · Ligar · Como chegar). Os cantos da foto
   levam Compartilhar e Mais ações. O botão do destaque tem a seta à direita. */
@media (max-width: 767.98px) {
	.mg-an-topo__cantos { position: absolute; top: 10px; right: 10px; z-index: 2; display: flex; gap: 8px; }
	.mg-an-topo__id--cantos { position: relative; padding-right: 92px; }
	.mg-an-topo__id--cantos .mg-an-topo__cantos { top: 14px; right: 4px; }
	.mg-an-topo__canto {
		display: inline-flex; align-items: center; justify-content: center;
		width: 36px; height: 36px; padding: 0;
		border: 0; border-radius: 99px;
		background: rgba(255, 255, 255, .94);
		color: #0d2b5c;
		box-shadow: 0 1px 4px rgba(13, 43, 92, .18);
		cursor: pointer;
	}
	.mg-an-topo__id--cantos .mg-an-topo__canto { border: 1px solid #e6ecf4; box-shadow: none; }
	.mg-an-topo__canto .mg-an-ico { width: 17px; height: 17px; }
	.mg-an-topo__canto:focus-visible { outline: 3px solid #1266d6; outline-offset: 2px; }
	.mg-an-topo__canto:active { transform: scale(var(--mg-ativo-escala, .97)); }

	.mg-an-topo__acoes .mg-an-topo__cta,
	.mg-an-topo__acoes[data-n="1"] .mg-an-topo__cta,
	.mg-an-topo__acoes[data-n="2"] .mg-an-topo__cta {
		flex-direction: row; gap: 6px;
		height: 46px; padding: 0 6px;
		border-radius: 12px;
		font-size: 13.5px;
	}
	.mg-an-topo__acoes .mg-an-topo__cta .mg-an-ico { width: 19px; height: 19px; }
	.mg-an-topo__acoes[data-n="1"] .mg-an-topo__cta,
	.mg-an-topo__acoes[data-n="2"] .mg-an-topo__cta { height: 48px; font-size: 14.5px; }

	.mg-an-topo__destaque-btn { position: relative; gap: 8px; }
	.mg-an-topo__destaque-btn .mg-an-ico { position: absolute; right: 16px; width: 18px; height: 18px; }
}
/* Em 320-374px o ícone ao lado não cabe em "Como chegar": volta para cima do nome. */
@media (max-width: 374.98px) {
	.mg-an-topo__acoes[data-n="3"] .mg-an-topo__cta { flex-direction: column; gap: 3px; height: 56px; font-size: 12px; }
	.mg-an-topo__acoes[data-n="3"] .mg-an-topo__cta .mg-an-ico { width: 18px; height: 18px; }
}
@media (min-width: 375px) and (max-width: 767.98px) {
	.mg-an-topo__acoes[data-n="3"] .mg-an-topo__cta { gap: 5px; padding: 0 4px; font-size: 12.5px; letter-spacing: -.01em; }
	.mg-an-topo__acoes[data-n="3"] .mg-an-topo__cta .mg-an-ico { width: 16px; height: 16px; }
}
