/* Agenda Foobá 0.2.0 -- usa os tokens do tema Foobá (--font-brand, --font-text, --ink*, --muted, --linha) com reservas.
   Cor: --agf-cor (forte, contraste com branco) e --agf-cor-viva (a da marca da editoria), definidas no elemento .agf.
   Cada card leva --a1/--a2 (escura/viva) do tipo do evento: cartaz de reserva, fundo tingido, ícones.
   Nos temas de acessibilidade (html[data-fa-tema]) as cores de texto e fundo são as do tema. */
.agf {
	--agf-ink: var(--ink, #12201d); --agf-ink-2: var(--ink-2, #1f2b28); --agf-ink-3: var(--ink-3, #3f4f4b); --agf-muted: var(--muted, #5b6b67); --agf-linha: var(--linha, #e3e9e7);
	--agf-suave: color-mix(in srgb, var(--agf-cor) 9%, transparent); --agf-papel: #fff; --agf-gratis: #8a5200; --agf-gratis-bg: #fff1d6; --agf-cor-selo: var(--agf-cor);
	--agf-r: 18px; --agf-r-g: 26px; --agf-ease: cubic-bezier(.2, .7, .2, 1);
	--agf-sombra: 0 1px 2px rgba(16, 32, 28, .06), 0 14px 28px -16px rgba(16, 32, 28, .35);
	--agf-sombra-g: 0 2px 6px rgba(16, 32, 28, .05), 0 28px 56px -28px rgba(16, 32, 28, .5);
	--agf-tit: var(--font-text, Montserrat, system-ui, sans-serif); --agf-marca: var(--font-brand, "Foobá!", Montserrat, sans-serif);
	font-family: var(--agf-tit); color: var(--agf-ink-2); padding-block: 20px 72px; display: grid; grid-template-columns: minmax(0, 1fr); gap: clamp(28px, 3.4vw, 48px);
}
html[data-fa-tema] .agf { --agf-ink: currentColor; --agf-ink-2: currentColor; --agf-ink-3: currentColor; --agf-muted: currentColor; --agf-linha: color-mix(in srgb, currentColor 22%, transparent); --agf-gratis: currentColor; --agf-gratis-bg: transparent; --agf-papel: transparent; --agf-sombra: none; --agf-sombra-g: none; --agf-cor-selo: #017a62; }
html[data-fa-tema="escuro"] .agf { --agf-cor: var(--fooba-destaque-claro, #5fe3c6); --agf-cor-viva: var(--fooba-destaque-claro, #5fe3c6); --agf-gratis: #ffcf7a; --agf-gratis-bg: rgba(255, 190, 80, .14); }
/* a barra de título do tema ("Eventos" + trilha de arquivo) sai: a agenda tem a própria marca */
body.agf-pagina .bdayh-page-title-bar { display: none !important; }
body .agf a, body .agf a:hover { color: inherit; text-decoration: none; }
.agf h1, .agf h2, .agf h3 { margin: 0; text-wrap: balance; }
.agf p { margin: 0; }
.agf ol, .agf ul { list-style: none; margin: 0; padding: 0; }
.agf li { margin: 0; }
.agf :focus-visible { outline: 3px solid var(--agf-cor-viva); outline-offset: 3px; } /* o contorno segue o arredondamento de cada peça */
.agf img { max-width: 100%; }
.agf svg { flex: none; fill: none; } /* o tema pinta o fill de todo svg; os ícones daqui são de contorno */

/* ── topo ─────────────────────────────────────────────────────────────────────────────────────────────────── */
.agf-topo { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 18px 24px; }
.agf-topo__marca { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 8px 20px; }
.agf .agf-marca { font: 400 clamp(3.2rem, 2.2rem + 4vw, 5.2rem)/.82 var(--agf-marca); color: var(--agf-cor-viva); letter-spacing: -.01em; }
html[data-fa-tema] .agf .agf-marca { color: inherit; }
.agf-topo__sub { display: grid; gap: 7px; padding-bottom: .3em; }
.agf-sub { font: 600 1.0625rem/1.2 var(--agf-tit); color: var(--agf-ink-3); }
.agf-conta { display: inline-flex; align-items: center; gap: 8px; font: 600 .8125rem/1 var(--agf-tit); color: var(--agf-ink-3); }
.agf-conta b { font-weight: 800; color: var(--agf-ink); }
.agf-conta i { width: 8px; height: 8px; border-radius: 50%; background: var(--agf-cor-viva); box-shadow: 0 0 0 4px color-mix(in srgb, var(--agf-cor-viva) 22%, transparent); }
.agf-visoes { display: inline-flex; padding: 4px; gap: 2px; border-radius: 999px; background: color-mix(in srgb, var(--agf-ink) 6%, transparent); }
.agf-visoes a { display: inline-flex; align-items: center; gap: 7px; font: 700 .875rem/1 var(--agf-tit); padding: 10px 16px; border-radius: 999px; color: var(--agf-ink-3) !important; transition: background .2s, color .2s; }
.agf-visoes a:hover { color: var(--agf-ink) !important; }
.agf-visoes svg { width: 17px; height: 17px; }
.agf-visoes a[aria-current] { background: var(--agf-papel); color: var(--agf-cor) !important; box-shadow: 0 1px 2px rgba(16, 32, 28, .1), 0 4px 12px -4px rgba(16, 32, 28, .2); }
html[data-fa-tema="escuro"] .agf-visoes a[aria-current] { background: var(--agf-cor); color: #0b1714 !important; }
html[data-fa-tema]:not([data-fa-tema="escuro"]) .agf-visoes a[aria-current] { outline: 2px solid currentColor; color: inherit !important; }

/* ── filtros ──────────────────────────────────────────────────────────────────────────────────────────────── */
.agf-filtros { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px 16px; }
.agf-chips { display: flex; gap: 6px; overflow-x: auto; scrollbar-width: none; max-width: 100%; min-width: 0; }
.agf-chips::-webkit-scrollbar { display: none; }
.agf-sel { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin: 0; }
.agf-chip { display: inline-flex; align-items: center; gap: 6px; height: 40px; padding: 0 16px; border-radius: 999px; border: 1.5px solid var(--agf-linha); background: var(--agf-papel); color: var(--agf-ink-2) !important; font: 700 .8125rem/1 var(--agf-tit); white-space: nowrap; cursor: pointer; transition: border-color .2s, background .2s, color .2s; }
.agf-chip:hover { border-color: var(--agf-ink-3); }
.agf-chip svg { width: 16px; height: 16px; color: var(--agf-gratis); }
.agf-chip[aria-current] { background: var(--agf-ink); border-color: var(--agf-ink); color: #fff !important; }
.agf-chip--gratis[aria-current] { background: var(--agf-gratis); border-color: var(--agf-gratis); }
.agf-chip[aria-current] svg { color: currentColor; }
html[data-fa-tema] .agf-chip[aria-current] { background: transparent; color: inherit !important; border-width: 3px; }
/* menus de cidade e tipo (details + links) */
.agf-menu { position: relative; }
.agf-menu > summary { display: inline-flex; align-items: center; gap: 8px; height: 40px; padding: 0 13px; border-radius: 999px; border: 1.5px solid var(--agf-linha); background: var(--agf-papel); color: var(--agf-ink-2); font: 700 .8125rem/1 var(--agf-tit); white-space: nowrap; cursor: pointer; list-style: none; user-select: none; transition: border-color .2s, background .2s, color .2s; }
.agf-menu > summary::-webkit-details-marker { display: none; }
.agf-menu > summary::marker { content: ""; }
.agf-menu > summary:hover { border-color: var(--agf-ink-3); }
.agf-menu > summary svg { width: 16px; height: 16px; color: var(--agf-cor); }
.agf-menu > summary svg:last-child { width: 14px; height: 14px; margin-left: 2px; color: var(--agf-muted); transition: transform .25s var(--agf-ease); }
.agf-menu[open] > summary { border-color: var(--agf-ink); }
.agf-menu[open] > summary svg:last-child { transform: rotate(180deg); }
.agf-menu--ativo > summary { background: var(--agf-suave); border-color: var(--agf-cor); color: var(--agf-cor); }
.agf-menu__painel { position: absolute; z-index: 40; top: calc(100% + 8px); left: 0; display: grid; gap: 2px; width: max-content; min-width: 260px; max-width: min(340px, calc(100vw - 32px)); max-height: min(62vh, 440px); overflow-y: auto; overscroll-behavior: contain; padding: 8px; border-radius: 20px; background: #fff; box-shadow: 0 24px 48px -18px rgba(16, 32, 28, .45), 0 0 0 1px rgba(16, 32, 28, .08); transform-origin: top left; }
.agf-menu__painel--dir { left: auto; right: 0; transform-origin: top right; }
.agf-menu__tit { padding: 8px 10px 6px; font: 800 .6875rem/1 var(--agf-tit); letter-spacing: .08em; text-transform: uppercase; color: var(--agf-muted); }
.agf-menu__painel a { display: grid; grid-template-columns: 34px minmax(0, 1fr) auto; align-items: center; gap: 11px; padding: 7px 10px 7px 7px; border-radius: 14px; color: var(--agf-ink) !important; font: 600 .9rem/1.2 var(--agf-tit); transition: background .15s; }
.agf-menu__painel a:hover, .agf-menu__painel a:focus-visible { background: color-mix(in srgb, var(--agf-ink) 6%, transparent); outline: 0; }
.agf-menu__painel a[aria-current] { background: var(--agf-suave); color: var(--agf-cor) !important; font-weight: 800; }
.agf-menu__ic { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: var(--agf-suave); color: var(--agf-cor); }
.agf-menu__ic svg { width: 17px; height: 17px; }
.agf-menu__ic--tipo { background: linear-gradient(135deg, var(--a1), var(--a2)); color: #fff; }
.agf-menu__ic--alem { background: linear-gradient(135deg, #1d3b8a, #38bdf8); color: #fff; }
.agf-menu__ic--alem svg { transform: rotate(-45deg); }
.agf-menu__tit--grupo { margin-top: 6px; padding-top: 12px; border-top: 1px solid color-mix(in srgb, var(--agf-ink) 9%, transparent); }
.agf-menu__painel small { min-width: 26px; padding: 4px 7px; border-radius: 999px; background: color-mix(in srgb, var(--agf-ink) 6%, transparent); font: 700 .6875rem/1 var(--agf-tit); color: var(--agf-muted); text-align: center; }
.agf-menu__painel small:empty { visibility: hidden; }
.agf-menu__painel a > svg { width: 18px; height: 18px; color: var(--agf-cor); }
html[data-fa-tema="escuro"] .agf-menu__painel { background: #17211e; box-shadow: 0 24px 48px -18px rgba(0, 0, 0, .8), 0 0 0 1px rgba(255, 255, 255, .1); }
html[data-fa-tema]:not([data-fa-tema="escuro"]) .agf-menu__painel { background: Canvas; color: CanvasText; box-shadow: 0 0 0 2px currentColor; }
html[data-fa-tema] .agf-menu--ativo > summary { background: transparent; color: inherit; border-width: 3px; }
@media (prefers-reduced-motion: no-preference) {
	.agf-menu[open] .agf-menu__painel { animation: agf-menu .18s var(--agf-ease); }
	@keyframes agf-menu { from { opacity: 0; transform: translateY(-4px) scale(.97); } }
}
.agf-vazio { display: grid; justify-items: center; gap: 12px; padding: 48px 20px; text-align: center; color: var(--agf-muted); border: 2px dashed var(--agf-linha); border-radius: var(--agf-r-g); }
.agf-vazio a { display: inline-flex; padding: 12px 20px; border-radius: 999px; background: var(--agf-cor); color: #fff !important; font-weight: 800; }

/* ── etiquetas ────────────────────────────────────────────────────────────────────────────────────────────── */
.agf-tags { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 9px; }
.agf-tag { display: inline-flex; align-items: center; font: 700 .6875rem/1 var(--agf-tit); letter-spacing: .03em; padding: 5px 9px; border-radius: 999px; color: var(--agf-cor); background: var(--agf-suave); }
.agf-tag--gratis { background: var(--agf-gratis-bg); color: var(--agf-gratis); }
.agf-tag--acess { background: transparent; color: var(--agf-ink-3); box-shadow: inset 0 0 0 1px var(--agf-linha); }
.agf-tag--sit { background: #b32d2e; color: #fff; }
html[data-fa-tema] .agf-tag { background: transparent; color: inherit; box-shadow: inset 0 0 0 1px currentColor; }
.agf-quando { display: inline-flex; align-items: center; gap: 6px; font: 800 .75rem/1.3 var(--agf-tit); letter-spacing: .05em; text-transform: uppercase; color: var(--agf-cor); }
.agf-quando svg { width: 15px; height: 15px; color: #f2a900; fill: currentColor; }
.agf-linha__onde { font-size: .8125rem; line-height: 1.45; color: var(--agf-ink-3); }

/* ── foto e cartaz de reserva ─────────────────────────────────────────────────────────────────────────────── */
.agf-foto { position: relative; overflow: hidden; background: var(--agf-suave); border-radius: calc(var(--agf-r) - 6px); }
.agf-foto img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .6s var(--agf-ease); }
.agf-arte { background: linear-gradient(var(--ang, 135deg), var(--a1), var(--a2)); color: #fff; container-type: inline-size; isolation: isolate; }
.agf-arte::before { content: ""; position: absolute; inset: 0; z-index: -1; background-image: radial-gradient(rgba(255, 255, 255, .3) 1.2px, transparent 1.8px); background-size: 11px 11px; -webkit-mask-image: linear-gradient(calc(var(--ang, 135deg) + 180deg), #000, transparent 58%); mask-image: linear-gradient(calc(var(--ang, 135deg) + 180deg), #000, transparent 58%); }
.agf-arte::after { content: ""; position: absolute; z-index: -1; width: 80%; aspect-ratio: 1; left: var(--bx, -18%); top: -34%; border-radius: 50%; background: radial-gradient(circle, rgba(255, 255, 255, .4), transparent 68%); }
.agf-arte__icone { position: absolute; right: -4%; bottom: -7%; width: 58%; height: auto; transform: rotate(var(--rot, -8deg)); color: rgba(255, 255, 255, .93); filter: drop-shadow(0 12px 18px rgba(0, 0, 0, .16)); transition: transform .6s var(--agf-ease); }
.agf-arte__nome { position: absolute; left: 7%; bottom: 8%; max-width: 62%; font: 800 1.25rem/.95 var(--agf-tit); font-size: clamp(1rem, 10cqi, 3rem); letter-spacing: -.03em; color: #fff; text-shadow: 0 2px 18px rgba(0, 0, 0, .22); overflow-wrap: anywhere; }
/* com foto: a foto entra pela direita, por trás, e some em direção ao centro; o degradê e o nome ficam à esquerda */
.agf-arte--foto { --foto-w: 76%; }
.agf .agf-arte--foto .agf-arte__img { z-index: -2; left: auto; right: 0; width: var(--foto-w); -webkit-mask-image: linear-gradient(90deg, transparent 0%, rgba(0, 0, 0, .55) 28%, #000 62%); mask-image: linear-gradient(90deg, transparent 0%, rgba(0, 0, 0, .55) 28%, #000 62%); }
.agf-arte--foto::before { -webkit-mask-image: linear-gradient(90deg, #000 20%, transparent 70%); mask-image: linear-gradient(90deg, #000 20%, transparent 70%); }
.agf-arte--foto::after { left: -30%; top: -30%; opacity: .7; }
.agf-arte--foto .agf-arte__nome { text-shadow: 0 2px 14px rgba(0, 0, 0, .3); }
.agf-foto--mini { border-radius: 12px; }
.agf-foto--mini .agf-arte__nome { display: none; }
.agf-foto--mini .agf-arte__icone { width: 74%; right: -12%; bottom: -16%; }
.agf-foto--mini.agf-arte::before { background-size: 7px 7px; }

/* selo de data (ingresso) e pílulas sobre a imagem */
.agf-selo { position: absolute; z-index: 2; left: 10px; top: 10px; display: grid; justify-items: center; min-width: 50px; padding: 7px 8px 8px; border-radius: 14px; background: rgba(255, 255, 255, .95); color: #12201d; line-height: 1; box-shadow: 0 6px 16px -8px rgba(0, 0, 0, .45); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
.agf-selo small { font: 800 .625rem/1 var(--agf-tit); letter-spacing: .08em; text-transform: uppercase; color: #3f4f4b; }
.agf-selo b { font: 800 1.5rem/1 var(--agf-tit); letter-spacing: -.04em; color: var(--agf-cor-selo, #017a62); margin: 3px 0 2px; font-variant-numeric: tabular-nums; }
.agf-selo--hora { padding: 9px 11px; }
.agf-selo--hora b { font: 800 .9375rem/1 var(--agf-tit); color: #12201d; margin: 0; }
.agf-pilulas { position: absolute; z-index: 2; right: 10px; top: 10px; display: flex; flex-direction: column; align-items: flex-end; gap: 4px; }
.agf-pilula { display: inline-flex; align-items: center; font: 800 .6875rem/1 var(--agf-tit); letter-spacing: .02em; padding: 7px 10px; border-radius: 999px; background: #ffd84d; color: #3d2600; box-shadow: 0 6px 14px -8px rgba(0, 0, 0, .5); }
.agf-pilula--sit { background: #b32d2e; color: #fff; }
.agf-pilulas:empty { display: none; }

/* ── card (trilhos, grade da Semana, "mais em") ───────────────────────────────────────────────────────────── */
.agf-card { position: relative; display: flex; flex-direction: column; min-width: 0; padding: 7px; border-radius: var(--agf-r); background: color-mix(in srgb, var(--a2, var(--agf-cor-viva)) 13%, var(--agf-papel)); transition: transform .35s var(--agf-ease), box-shadow .35s var(--agf-ease); }
.agf-card .agf-foto { aspect-ratio: 4 / 3; }
.agf-card--trilho .agf-foto { aspect-ratio: 1; }
.agf-card__txt { display: grid; gap: 5px; padding: 12px 8px 9px; align-content: start; }
.agf-card__tipo { font: 800 .6875rem/1 var(--agf-tit); letter-spacing: .08em; text-transform: uppercase; color: var(--a1, var(--agf-cor)); }
.agf .agf-card__titulo { font: 800 1.0625rem/1.25 var(--agf-tit); color: var(--agf-ink); display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.agf-card__titulo a::after { content: ""; position: absolute; inset: 0; z-index: 3; border-radius: var(--agf-r); }
.agf-card__meta { font-size: .8125rem; line-height: 1.45; color: var(--agf-ink-3); }
.agf-card__local, .agf-com-avatar { display: flex; align-items: center; gap: 8px; font-size: .8125rem; line-height: 1.35; color: var(--agf-ink-3); }
.agf-card__local { margin-top: 2px; }
/* foto de perfil do local */
.agf img.agf-avatar { flex: none; width: 26px; height: 26px; max-width: none; border-radius: 50%; object-fit: cover; background: #fff; box-shadow: 0 0 0 2px var(--agf-papel), 0 0 0 3px color-mix(in srgb, var(--agf-ink) 12%, transparent); }
.agf-hero__meta img.agf-avatar { width: 24px; height: 24px; box-shadow: 0 0 0 2px rgba(255, 255, 255, .9); }
.agf-evento__resumo-quando img.agf-avatar { width: 26px; height: 26px; }
.agf-ficha__avatar { display: block; width: 40px; height: 40px; }
.agf .agf-ficha__avatar img.agf-avatar { width: 40px; height: 40px; }
html[data-fa-tema="escuro"] .agf img.agf-avatar { box-shadow: 0 0 0 2px rgba(255, 255, 255, .15); }
.agf-card__ir { position: absolute; z-index: 2; right: 10px; bottom: 10px; display: grid; place-items: center; width: 38px; height: 38px; border-radius: 50%; background: rgba(255, 255, 255, .95); color: var(--a1, var(--agf-cor)); box-shadow: 0 6px 14px -8px rgba(0, 0, 0, .5); transition: background .3s, color .3s, transform .35s var(--agf-ease); }
.agf-card__ir svg { width: 18px; height: 18px; transform: rotate(-45deg); }
.agf-card:hover { transform: translateY(-4px); box-shadow: var(--agf-sombra); }
.agf-card:hover .agf-foto img { transform: scale(1.06); }
.agf-card:hover .agf-arte__icone { transform: rotate(calc(var(--rot, -8deg) * -1)) scale(1.06); }
.agf-card:hover .agf-card__ir { background: var(--a1, var(--agf-cor)); color: #fff; transform: scale(1.08); }
.agf-card:focus-within { outline: 3px solid var(--agf-cor-viva); outline-offset: 2px; }
.agf-card:focus-within a:focus-visible { outline: 0; }
html[data-fa-tema="escuro"] .agf-card { background: color-mix(in srgb, var(--a2, var(--agf-cor-viva)) 13%, transparent); }
html[data-fa-tema="escuro"] .agf-card__tipo { color: var(--a2, var(--agf-cor)); }
html[data-fa-tema]:not([data-fa-tema="escuro"]) .agf-card { background: transparent; box-shadow: inset 0 0 0 1px currentColor; }
html[data-fa-tema]:not([data-fa-tema="escuro"]) .agf-card__tipo { color: inherit; }

/* ── Vitrine ──────────────────────────────────────────────────────────────────────────────────────────────── */
.agf-hero { position: relative; isolation: isolate; display: grid; align-items: end; min-height: clamp(380px, 44vw, 560px); border-radius: var(--agf-r-g); overflow: hidden; color: #fff; box-shadow: var(--agf-sombra-g); }
.agf-hero__foto { position: absolute; inset: 0; z-index: -2; border-radius: 0; }
.agf-hero::before { content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none; background: linear-gradient(90deg, rgba(6, 14, 12, .84) 0%, rgba(6, 14, 12, .5) 46%, transparent 76%), linear-gradient(transparent 55%, rgba(6, 14, 12, .45)); }
.agf-hero--arte::before { background: linear-gradient(90deg, rgba(6, 10, 20, .55) 0%, rgba(6, 10, 20, .2) 50%, transparent 72%); }
.agf-hero .agf-arte__nome { display: none; }
.agf-hero .agf-arte--foto { --foto-w: 66%; }
.agf-hero--arte .agf-arte__icone { width: min(42%, 440px); right: 5%; bottom: -12%; }
.agf-hero--arte .agf-arte::before { background-size: 16px 16px; }
.agf-hero:hover .agf-hero__foto img { transform: scale(1.03); }
.agf-hero > .agf-selo { left: auto; right: clamp(16px, 2.6vw, 32px); top: clamp(16px, 2.6vw, 32px); min-width: 74px; padding: 11px 12px 12px; border-radius: 20px; }
.agf-hero > .agf-selo small { font-size: .6875rem; }
.agf-hero > .agf-selo b { font-size: 2.2rem; }
.agf-hero__txt { position: relative; display: grid; gap: 14px; justify-items: start; padding: clamp(22px, 4vw, 52px); max-width: 680px; }
.agf-hero__olho { display: inline-flex; align-items: center; gap: 8px; padding: 8px 14px 7px; border-radius: 999px; background: rgba(255, 255, 255, .14); box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .28); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); font: 700 .8125rem/1 var(--agf-tit); letter-spacing: .02em; color: #fff; }
.agf-hero__olho svg { width: 16px; height: 16px; color: #ffd84d; fill: #ffd84d; }
.agf .agf-hero__titulo { font: 800 clamp(1.8rem, 1.1rem + 2.7vw, 3.25rem)/1.04 var(--agf-tit); letter-spacing: -.018em; color: #fff; text-shadow: 0 2px 24px rgba(0, 0, 0, .2); }
body .agf .agf-hero__titulo a, body .agf .agf-hero__titulo a:hover { color: #fff; }
.agf-hero__meta { display: flex; flex-wrap: wrap; gap: 8px 20px; font: 600 .9375rem/1.3 var(--agf-tit); color: rgba(255, 255, 255, .95); }
.agf-hero__meta span { display: inline-flex; align-items: center; gap: 8px; }
.agf-hero__meta svg { width: 18px; height: 18px; color: #7ff0d2; }
.agf-hero__resumo { font-size: .9375rem; line-height: 1.5; color: rgba(255, 255, 255, .82); max-width: 56ch; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.agf-hero__acoes { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-top: 4px !important; }
.agf-hero__preco { font: 700 .8125rem/1.3 var(--agf-tit); color: rgba(255, 255, 255, .85); max-width: 32ch; }
.agf-hero .agf-pilula { font-size: .75rem; padding: 9px 13px; }

/* tipos em círculos */
.agf-tipos { display: flex; gap: 6px; overflow-x: auto; scrollbar-width: none; padding: 4px 2px 6px; margin-top: -8px; }
.agf-tipos::-webkit-scrollbar { display: none; }
.agf-tipos a { flex: 0 0 auto; display: grid; justify-items: center; gap: 6px; width: 98px; padding: 6px 2px; text-align: center; border-radius: var(--agf-r); }
.agf-tipos__ic { display: grid; place-items: center; width: 70px; height: 70px; border-radius: 50%; background: color-mix(in srgb, var(--a2) 20%, var(--agf-papel)); color: var(--a1); transition: transform .35s var(--agf-ease), background .3s, color .3s; }
.agf-tipos__ic svg { width: 30px; height: 30px; }
.agf-tipos b { font: 700 .8125rem/1.2 var(--agf-tit); color: var(--agf-ink); }
.agf-tipos small { font: 600 .6875rem/1 var(--agf-tit); color: var(--agf-muted); }
.agf-tipos a:hover .agf-tipos__ic { background: linear-gradient(135deg, var(--a1), var(--a2)); color: #fff; transform: translateY(-3px) rotate(-6deg); }
html[data-fa-tema="escuro"] .agf-tipos__ic { background: color-mix(in srgb, var(--a2) 18%, transparent); color: var(--a2); }
html[data-fa-tema]:not([data-fa-tema="escuro"]) .agf-tipos__ic { background: transparent; color: inherit; box-shadow: inset 0 0 0 2px currentColor; }

/* trilhos */
.agf-trilho { display: grid; gap: 16px; min-width: 0; }
.agf-trilho__cab { display: flex; align-items: center; gap: 10px; min-width: 0; }
.agf .agf-trilho__titulo { display: flex; align-items: center; gap: 10px; font: 800 clamp(1.3rem, 1.1rem + .7vw, 1.65rem)/1.15 var(--agf-tit); letter-spacing: -.015em; color: var(--a1, var(--agf-cor)); }
.agf-trilho__ic { display: grid; place-items: center; flex: none; width: 34px; height: 34px; border-radius: 11px; background: linear-gradient(135deg, var(--a1, var(--agf-cor)), var(--a2, var(--agf-cor-viva))); color: #fff; box-shadow: 0 6px 14px -8px var(--a1, var(--agf-cor)); }
.agf-trilho__ic svg { width: 19px; height: 19px; }
html[data-fa-tema="escuro"] .agf .agf-trilho__titulo { color: var(--a2, var(--agf-cor)); }
html[data-fa-tema]:not([data-fa-tema="escuro"]) .agf .agf-trilho__titulo { color: inherit; }
html[data-fa-tema]:not([data-fa-tema="escuro"]) .agf-trilho__ic { background: transparent; color: inherit; box-shadow: inset 0 0 0 2px currentColor; }
.agf-trilho__n { font: 800 .75rem/1 var(--agf-tit); padding: 6px 9px; border-radius: 999px; background: var(--agf-suave); color: var(--agf-cor); }
.agf-trilho__mais { margin-left: auto; display: inline-flex; align-items: center; gap: 6px; padding: 10px 15px; border-radius: 999px; font: 800 .8125rem/1 var(--agf-tit); color: var(--agf-cor) !important; background: var(--agf-suave); white-space: nowrap; transition: background .2s; }
.agf-trilho__mais svg { width: 15px; height: 15px; transition: transform .25s var(--agf-ease); }
.agf-trilho__mais:hover svg { transform: translateX(3px); }
.agf-setas { display: flex; gap: 6px; margin-left: auto; }
.agf-trilho__mais + .agf-setas { margin-left: 0; }
.agf-seta { display: grid; place-items: center; width: 40px; height: 40px; padding: 0; border-radius: 50%; border: 1.5px solid var(--agf-linha); background: var(--agf-papel); color: var(--agf-ink); cursor: pointer; transition: border-color .2s, opacity .2s, background .2s; }
.agf-seta:hover:not(:disabled) { border-color: var(--agf-ink); }
.agf-seta:disabled { opacity: .3; cursor: default; }
.agf-seta svg { width: 18px; height: 18px; }
.agf-seta--ant svg { transform: scaleX(-1); }
.agf-trilho__cards { display: grid; grid-auto-flow: column; grid-auto-columns: max(210px, calc((100% - 64px) / 5)); gap: 16px; overflow-x: auto; overscroll-behavior-x: contain; scroll-snap-type: x mandatory; scrollbar-width: none; padding: 6px 6px 18px; margin: -6px -6px -18px; scroll-padding-inline: 6px; }
.agf-trilho__cards::-webkit-scrollbar { display: none; }
.agf-card--trilho { scroll-snap-align: start; }
.agf-mais { text-align: center; }
.agf-mais a { display: inline-flex; align-items: center; gap: 10px; padding: 17px 28px; border-radius: 999px; background: var(--agf-ink); color: #fff !important; font: 800 .9375rem/1 var(--agf-tit); box-shadow: var(--agf-sombra); transition: background .25s, transform .25s var(--agf-ease); }
.agf-mais a:hover { background: var(--agf-cor); transform: translateY(-2px); }
.agf-mais svg { width: 18px; height: 18px; }
html[data-fa-tema] .agf-mais a { background: transparent; color: inherit !important; box-shadow: inset 0 0 0 2px currentColor; }

/* ── Roteiro ──────────────────────────────────────────────────────────────────────────────────────────────── */
.agf--roteiro { gap: clamp(26px, 3vw, 40px); }
.agf-dia { display: grid; grid-template-columns: 116px minmax(0, 1fr); gap: 24px; padding-top: 22px; border-top: 1px solid var(--agf-linha); }
.agf-dia__data { position: sticky; top: 100px; align-self: start; display: grid; justify-items: start; gap: 3px; }
.agf-dia__sem { font: 800 .75rem/1 var(--agf-tit); letter-spacing: .08em; text-transform: uppercase; color: var(--agf-ink-3); }
.agf-dia--hoje .agf-dia__sem { padding: 5px 9px; border-radius: 999px; background: var(--agf-cor); color: #fff; }
.agf-dia__data b { font: 800 3.6rem/.95 var(--agf-tit); letter-spacing: -.05em; color: var(--agf-cor); font-variant-numeric: tabular-nums; margin-top: 6px; }
.agf-dia__mes { font: 700 .9375rem/1 var(--agf-tit); color: var(--agf-ink); }
.agf-dia__n { margin-top: 10px; font: 700 .6875rem/1 var(--agf-tit); padding: 6px 9px; border-radius: 999px; background: var(--agf-suave); color: var(--agf-cor); }
.agf-dia__lista { display: grid; }
.agf .agf-linha { position: relative; display: grid; grid-template-columns: 66px minmax(0, 1fr) 136px; gap: 18px; align-items: center; padding: 14px; margin: 0 -14px; border-radius: var(--agf-r); transition: background .25s; }
.agf-linha + .agf-linha::before { content: ""; position: absolute; left: 14px; right: 14px; top: 0; border-top: 1px solid var(--agf-linha); transition: opacity .2s; }
.agf-linha:hover, .agf-linha:focus-within { background: var(--agf-suave); }
.agf-linha:hover::before, .agf-linha:hover + .agf-linha::before { opacity: 0; }
.agf-linha__hora { align-self: start; padding-top: 2px; font: 800 1.125rem/1.2 var(--agf-tit); color: var(--agf-cor); font-variant-numeric: tabular-nums; }
.agf-linha__hora--suave { padding-top: 5px; font-size: .6875rem; letter-spacing: .06em; text-transform: uppercase; color: var(--agf-muted); }
.agf .agf-linha__titulo { font: 800 1.1875rem/1.25 var(--agf-tit); color: var(--agf-ink); margin: 0 0 4px; }
.agf-linha__titulo a::after { content: ""; position: absolute; inset: 0; border-radius: var(--agf-r); }
.agf-linha__foto { width: 136px; aspect-ratio: 4 / 3; box-shadow: 0 8px 18px -12px rgba(16, 32, 28, .5); }
.agf-linha:hover .agf-foto img { transform: scale(1.06); }
.agf-linha:hover .agf-arte__icone { transform: rotate(calc(var(--rot, -8deg) * -1)) scale(1.06); }
.agf-cartaz { display: grid; gap: 16px; padding-top: 22px; border-top: 1px solid var(--agf-linha); }
.agf-cartaz__lista { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 12px; }
.agf .agf-cartaz__item { position: relative; display: grid; grid-template-columns: 66px minmax(0, 1fr); gap: 14px; align-items: center; padding: 10px; border-radius: var(--agf-r); background: var(--agf-suave); transition: transform .3s var(--agf-ease), box-shadow .3s; }
.agf-cartaz__item:hover { transform: translateY(-2px); box-shadow: var(--agf-sombra); }
.agf-cartaz__item .agf-foto { width: 66px; aspect-ratio: 1; }
.agf-cartaz__item a { font-weight: 800; color: var(--agf-ink) !important; line-height: 1.25; }
.agf-cartaz__item a::after { content: ""; position: absolute; inset: 0; border-radius: var(--agf-r); }
.agf-cartaz__item span { display: block; margin-top: 3px; font-size: .8125rem; line-height: 1.4; color: var(--agf-ink-3); }

/* ── Semana ───────────────────────────────────────────────────────────────────────────────────────────────── */
.agf-faixa { display: flex; gap: 8px; overflow-x: auto; scrollbar-width: none; padding: 6px 4px 16px; margin: -6px -4px -16px; scroll-snap-type: x proximity; }
.agf-faixa::-webkit-scrollbar { display: none; }
.agf-faixa__dia { flex: 1 0 74px; display: grid; justify-items: center; gap: 4px; padding: 12px 6px 10px; border-radius: 18px; border: 1.5px solid var(--agf-linha); background: var(--agf-papel); color: var(--agf-ink-2) !important; scroll-snap-align: start; transition: transform .25s var(--agf-ease), border-color .2s, box-shadow .25s; }
.agf-faixa__dia small { font: 800 .625rem/1 var(--agf-tit); letter-spacing: .08em; text-transform: uppercase; color: var(--agf-muted); }
.agf-faixa__dia b { font: 800 1.6rem/1 var(--agf-tit); letter-spacing: -.04em; margin-top: 2px; }
.agf-faixa__dia em { font: 700 .625rem/1 var(--agf-tit); font-style: normal; color: var(--agf-cor); white-space: nowrap; }
.agf-faixa__dia i { display: flex; gap: 3px; height: 5px; }
.agf-faixa__dia i span { width: 5px; height: 5px; border-radius: 50%; background: var(--agf-cor-viva); }
a.agf-faixa__dia:hover { transform: translateY(-2px); border-color: var(--agf-cor); }
.agf-faixa__dia[aria-current] { background: var(--agf-cor); border-color: var(--agf-cor); color: #fff !important; box-shadow: 0 12px 24px -12px var(--agf-cor); }
.agf-faixa__dia[aria-current] :is(small, em) { color: #fff; }
.agf-faixa__dia[aria-current] i span { background: #fff; }
.agf-faixa__dia.is-vazio { opacity: .5; border-style: dashed; background: transparent; }
.agf-faixa__dia.is-vazio em { color: var(--agf-muted); }
html[data-fa-tema] .agf-faixa__dia[aria-current] { background: transparent; color: inherit !important; border-width: 3px; box-shadow: none; }
.agf-sem-destaque { position: relative; display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: clamp(18px, 3vw, 40px); align-items: center; padding: 12px; border-radius: var(--agf-r-g); background: var(--agf-suave); transition: box-shadow .3s; }
.agf-sem-destaque:hover { box-shadow: var(--agf-sombra); }
.agf-sem-destaque .agf-foto { aspect-ratio: 16 / 10; border-radius: calc(var(--agf-r-g) - 8px); }
.agf-sem-destaque .agf-arte--foto { --foto-w: 70%; }
.agf-sem-destaque:hover .agf-foto img { transform: scale(1.04); }
.agf-sem-destaque__txt { display: grid; gap: 8px; justify-items: start; padding: 12px 20px 12px 0; }
.agf .agf-sem-destaque__titulo { font: 800 clamp(1.45rem, 1rem + 1.5vw, 2.1rem)/1.1 var(--agf-tit); letter-spacing: -.01em; color: var(--agf-ink); }
.agf-sem-destaque__titulo a::after { content: ""; position: absolute; inset: 0; border-radius: var(--agf-r-g); }
.agf-sem-destaque__resumo { font-size: .9375rem; line-height: 1.5; color: var(--agf-ink-3); display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.agf-chamada { display: inline-flex; align-items: center; gap: 8px; margin-top: 6px; padding: 12px 20px; border-radius: 999px; background: var(--agf-cor); color: #fff; font: 800 .875rem/1 var(--agf-tit); transition: gap .25s var(--agf-ease); }
.agf-chamada svg { width: 16px; height: 16px; }
.agf-sem-destaque:hover .agf-chamada { gap: 12px; }
.agf-grade { display: grid; grid-template-columns: repeat(auto-fill, minmax(236px, 1fr)); gap: 18px; }

/* ── botões ───────────────────────────────────────────────────────────────────────────────────────────────── */
.agf-botao { display: inline-flex; align-items: center; justify-content: center; gap: 8px; text-align: center; font: 800 .9375rem/1.2 var(--agf-tit); padding: 15px 20px; border-radius: 999px; background: var(--agf-cor); color: #fff !important; transition: transform .25s var(--agf-ease), box-shadow .25s, background .2s, border-color .2s; }
.agf-botao svg { width: 18px; height: 18px; }
.agf-botao:hover { transform: translateY(-1px); box-shadow: 0 12px 22px -12px var(--agf-cor); }
.agf-botao--claro { background: #fff; color: #12201d !important; padding: 14px 22px; }
.agf-botao--claro svg { transition: transform .25s var(--agf-ease); }
.agf-botao--claro:hover { box-shadow: 0 12px 24px -12px rgba(0, 0, 0, .6); }
.agf-botao--claro:hover svg { transform: translateX(3px); }
.agf-botao--linha { background: transparent; color: var(--agf-ink) !important; box-shadow: inset 0 0 0 1.5px var(--agf-linha); font-weight: 700; font-size: .8125rem; padding: 12px 14px; }
.agf-botao--linha svg { width: 16px; height: 16px; color: var(--agf-cor); }
.agf-botao--linha:hover { box-shadow: inset 0 0 0 1.5px var(--agf-ink-3); transform: none; }
.agf-botao--zap svg { color: #1ea952; }
html[data-fa-tema] .agf-botao { background: transparent; color: inherit !important; box-shadow: inset 0 0 0 2px currentColor; }

/* ── página do evento ─────────────────────────────────────────────────────────────────────────────────────── */
.agf--evento { gap: clamp(20px, 2.6vw, 32px); }
/* topo da página do evento: a marca (link), atalhos e trilha */
.agf-topo--evento { padding-bottom: clamp(16px, 2vw, 22px); border-bottom: 1px solid var(--agf-linha); }
.agf .agf-topo--evento .agf-marca { font-size: clamp(2.6rem, 1.9rem + 2.6vw, 3.8rem); transition: opacity .2s; }
.agf .agf-topo--evento a.agf-marca { color: var(--agf-cor-viva) !important; }
.agf .agf-topo--evento a.agf-marca:hover { opacity: .8; }
.agf-atalhos { display: flex; gap: 6px; overflow-x: auto; scrollbar-width: none; max-width: 100%; }
.agf-atalhos::-webkit-scrollbar { display: none; }
.agf-atalhos .agf-chip svg { color: var(--agf-cor); }
.agf-atalhos .agf-chip--gratis svg { color: var(--agf-gratis); }
.agf-atalhos .agf-chip:hover { border-color: var(--agf-cor); color: var(--agf-cor) !important; }
.agf-trilha { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 6px; font: 700 .8125rem/1.2 var(--agf-tit); color: var(--agf-muted); margin-top: calc(-1 * clamp(4px, 1vw, 12px)) !important; }
.agf-trilha a { color: var(--agf-cor) !important; padding: 4px 0; }
.agf-trilha a:hover { text-decoration: underline !important; text-underline-offset: 3px; }
.agf-trilha__seta svg { width: 13px; height: 13px; transform: rotate(-90deg); color: var(--agf-muted); }
.agf-aviso { padding: 14px 18px; border-radius: 14px; background: #fbeaea; color: #8a1f1f; font-weight: 700; box-shadow: inset 4px 0 0 #b32d2e; }
html[data-fa-tema] .agf-aviso { background: transparent; color: inherit; }
.agf-evento__foto { aspect-ratio: 21 / 9; max-height: 540px; border-radius: var(--agf-r-g); box-shadow: var(--agf-sombra-g); }
.agf-evento__foto .agf-selo { left: clamp(14px, 2.4vw, 28px); top: clamp(14px, 2.4vw, 28px); min-width: 74px; padding: 11px 12px 12px; border-radius: 20px; }
.agf-evento__foto .agf-selo b { font-size: 2.2rem; }
.agf-evento__foto .agf-pilulas { right: clamp(14px, 2.4vw, 28px); top: clamp(14px, 2.4vw, 28px); }
.agf-evento__foto .agf-arte__nome { left: 5%; bottom: 9%; font-size: clamp(2rem, 7cqi, 5.5rem); }
.agf-evento__foto .agf-arte__icone { width: 34%; right: 4%; bottom: -16%; }
.agf-evento__foto.agf-arte--foto { --foto-w: 64%; }
.agf-evento { display: grid; grid-template-columns: minmax(0, 1fr) 360px; grid-template-areas: "cab ficha" "txt ficha"; grid-template-rows: auto 1fr; gap: 22px clamp(28px, 4vw, 56px); align-items: start; }
.agf-evento__cab { grid-area: cab; }
.agf-evento__texto { grid-area: txt; }
.agf .agf-evento__titulo { font: 800 clamp(2rem, 1.3rem + 2.6vw, 3.3rem)/1.05 var(--agf-tit); letter-spacing: -.018em; color: var(--agf-ink); margin: 12px 0 16px; }
.agf-evento__resumo-quando { display: flex; flex-wrap: wrap; gap: 10px 22px; font: 700 1rem/1.35 var(--agf-tit); color: var(--agf-ink-2); }
.agf-evento__resumo-quando span { display: inline-flex; align-items: center; gap: 8px; }
.agf-evento__resumo-quando svg { width: 20px; height: 20px; color: var(--agf-cor); }
.agf-evento__desc { font-size: var(--t-body, 1.09375rem); line-height: 1.7; color: var(--agf-ink-2); max-width: 42rem; }
.agf-evento__desc p + p { margin-top: 1em; }
.agf-evento__desc a { color: var(--agf-cor) !important; text-decoration: underline !important; text-underline-offset: 3px; }
.agf-evento__materia { margin-top: 20px !important; padding: 14px 16px; border-radius: 14px; background: var(--agf-suave); font-weight: 600; max-width: 42rem; }
.agf-evento__materia a { color: var(--agf-cor) !important; text-decoration: underline !important; }
.agf-ficha { grid-area: ficha; position: sticky; top: 96px; display: grid; gap: 16px; padding: 22px; border-radius: var(--agf-r-g); background: var(--agf-papel); box-shadow: var(--agf-sombra-g), inset 0 0 0 1px var(--agf-linha); }
.agf-ficha__data { display: flex; align-items: center; gap: 14px; padding-bottom: 16px; border-bottom: 1.5px dashed var(--agf-linha); }
.agf-ficha__data b { font: 800 3.2rem/1 var(--agf-tit); letter-spacing: -.05em; color: var(--agf-cor); }
.agf-ficha__data span { font: 700 .9375rem/1.35 var(--agf-tit); color: var(--agf-ink); }
.agf-ficha__li { display: grid; grid-template-columns: 40px minmax(0, 1fr); gap: 12px; align-items: start; font-size: .875rem; line-height: 1.45; color: var(--agf-ink-3); }
.agf-ficha__li b { display: block; color: var(--agf-ink); font-size: .9375rem; margin-bottom: 1px; }
.agf-ficha__li > svg { width: 40px; height: 40px; padding: 10px; border-radius: 12px; background: var(--agf-suave); color: var(--agf-cor); }
.agf-ficha__acoes { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.agf-ficha__acoes .agf-botao { padding: 11px 8px; white-space: nowrap; }
.agf-ficha__acoes a:last-child { grid-column: 1 / -1; }
html[data-fa-tema] .agf-ficha { background: transparent; box-shadow: inset 0 0 0 1px currentColor; }

/* ── telas menores ────────────────────────────────────────────────────────────────────────────────────────── */
@media (max-width: 860px) {
	.agf-evento { grid-template-columns: minmax(0, 1fr); grid-template-areas: "cab" "ficha" "txt"; grid-template-rows: auto; }
	.agf-ficha { position: static; }
	.agf-evento__foto { aspect-ratio: 16 / 10; }
	.agf-sem-destaque { grid-template-columns: minmax(0, 1fr); padding: 8px; }
	.agf-sem-destaque__txt { padding: 4px 10px 12px; }
}
@media (max-width: 640px) {
	.agf { gap: 30px; padding-top: 12px; }
	.agf-topo { gap: 16px; }
	.agf-topo__marca { gap: 8px; }
	.agf-visoes { display: flex; width: 100%; }
	.agf-visoes a { flex: 1; justify-content: center; padding: 11px 8px; }
	.agf-filtros { gap: 10px; }
	.agf-chips, .agf-tipos, .agf-atalhos { margin-inline: -16px; padding-inline: 16px; }
	.agf-atalhos { max-width: none; }
	.agf-sel { width: 100%; }
	.agf-sel .agf-menu { flex: 1 1 140px; }
	.agf-menu > summary { width: 100%; }
	.agf-menu > summary span { flex: 1; overflow: hidden; text-overflow: ellipsis; }
	.agf-hero { min-height: 460px; border-radius: 22px; }
	.agf-hero::before { background: linear-gradient(transparent 18%, rgba(6, 14, 12, .9) 78%); }
	.agf-hero--arte::before { background: linear-gradient(transparent 30%, rgba(6, 10, 20, .6) 85%); }
	.agf-hero--arte .agf-arte__icone { width: 58%; right: -6%; bottom: auto; top: 4%; }
	.agf .agf-hero .agf-arte--foto .agf-arte__img { width: 100%; height: 72%; bottom: auto; -webkit-mask-image: linear-gradient(180deg, #000 45%, transparent); mask-image: linear-gradient(180deg, #000 45%, transparent); }
	.agf-hero > .agf-selo { min-width: 60px; padding: 9px 10px 10px; }
	.agf-hero > .agf-selo b { font-size: 1.8rem; }
	.agf-hero__txt { gap: 11px; padding-top: 104px; } /* abaixo do selo de data */
	.agf-hero__meta { font-size: .875rem; gap: 6px 14px; }
	.agf-trilho__ic { width: 30px; height: 30px; border-radius: 10px; }
	.agf-trilho__cards { grid-auto-columns: 66%; gap: 12px; margin-inline: -16px; padding-inline: 16px; scroll-padding-inline: 16px; }
	.agf-setas { display: none; }
	.agf-dia { grid-template-columns: minmax(0, 1fr); gap: 8px; padding-top: 18px; }
	.agf-dia__data { position: static; display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 8px; }
	.agf-dia__data b { font-size: 2.6rem; order: -1; margin: 0; }
	.agf-dia__n { margin: 0 0 0 auto; align-self: center; }
	.agf .agf-linha { grid-template-columns: 52px minmax(0, 1fr) 86px; gap: 12px; padding: 12px 10px; margin: 0 -10px; }
	.agf-linha + .agf-linha::before { left: 10px; right: 10px; }
	.agf-linha__foto { width: 86px; aspect-ratio: 1; }
	.agf-linha__hora { font-size: .9375rem; }
	.agf .agf-linha__titulo { font-size: 1rem; }
	.agf-grade { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
	.agf-grade .agf-card { padding: 5px; }
	.agf-grade .agf-card__txt { padding: 10px 6px 7px; }
	.agf-grade .agf .agf-card__titulo, .agf-grade .agf-card__titulo { font-size: .9375rem; }
	.agf-grade .agf-card__ir { width: 32px; height: 32px; right: 8px; bottom: 8px; }
	.agf-evento__foto .agf-selo { min-width: 60px; }
	.agf-evento__foto .agf-selo b { font-size: 1.8rem; }
	.agf-ficha { padding: 18px; }
}

/* ── movimento ────────────────────────────────────────────────────────────────────────────────────────────── */
@media (prefers-reduced-motion: no-preference) {
	.agf-hero, .agf-tipos a, .agf-trilho, .agf-dia, .agf-sem-destaque, .agf-grade .agf-card { animation: agf-entra .5s var(--agf-ease) both; }
	.agf-tipos a:nth-child(2) { animation-delay: .04s; } .agf-tipos a:nth-child(3) { animation-delay: .08s; } .agf-tipos a:nth-child(4) { animation-delay: .12s; } .agf-tipos a:nth-child(n+5) { animation-delay: .16s; }
	.agf-conta i { animation: agf-pulso 2.4s ease-in-out infinite; }
	@keyframes agf-entra { from { opacity: 0; transform: translateY(10px); } }
	@keyframes agf-pulso { 50% { box-shadow: 0 0 0 7px color-mix(in srgb, var(--agf-cor-viva) 0%, transparent); } }
}
@media (prefers-reduced-motion: reduce) {
	.agf *, .agf *::before, .agf *::after { transition: none !important; }
	.agf-card:hover, .agf-cartaz__item:hover, a.agf-faixa__dia:hover, .agf-mais a:hover, .agf-botao:hover { transform: none; }
}
.agf-setas[hidden] { display: none; }

/* ── bloco "Agenda Foobá" fora da agenda (home, editoria, matérias, lateral) ─────────────────────────────────── */
.agf.agf-widget { padding: 0; margin: clamp(24px, 3vw, 40px) 0; gap: 14px; min-width: 0; max-width: 100%; width: 100%; box-sizing: border-box; }
.agf-widget .agf-trilho, .agf-widget .agf-trilho__cards { min-width: 0; max-width: 100%; }
.agf-widget .agf-trilho__cab { flex-wrap: wrap; gap: 8px 16px; align-items: flex-end; }
.agf-widget__marca { display: inline-flex; line-height: 1; }
.agf .agf-widget .agf-marca, .agf.agf-widget .agf-marca { font-size: clamp(2.3rem, 1.8rem + 1.6vw, 3.2rem); transition: opacity .2s; }
.agf-widget__marca:hover .agf-marca { opacity: .8; }
.agf-widget .agf-topo__sub { padding-bottom: .35em; }
.agf-widget .agf-trilho__mais { align-self: center; }
/* card final da faixa: chamada para a agenda */
.agf .agf-card--fim { display: grid; align-content: center; justify-items: start; gap: 10px; padding: 22px; min-height: 100%; background: linear-gradient(150deg, var(--agf-cor), var(--agf-cor-viva)); color: #fff !important; text-decoration: none; }
.agf-card--fim b { font: 800 1.25rem/1.15 var(--agf-tit); }
.agf-card--fim > span:not(.agf-card__ir):not(.agf-card--fim__ic) { font-size: .875rem; line-height: 1.4; opacity: .9; }
.agf-card--fim__ic { display: grid; place-items: center; width: 48px; height: 48px; border-radius: 14px; background: rgba(255, 255, 255, .18); }
.agf-card--fim__ic svg { width: 24px; height: 24px; }
.agf-card--fim .agf-card__ir { position: static; margin-top: 6px; color: var(--agf-cor); }
/* lista lateral */
.agf.agf-widget--lista { gap: 0; padding: 20px 18px 18px; border-radius: 22px; background: var(--agf-papel); box-shadow: var(--agf-sombra), inset 0 0 0 1px var(--agf-linha); }
.agf-widget__cab { display: grid; gap: 8px; padding-bottom: 14px; border-bottom: 1px solid var(--agf-linha); }
.agf-widget--lista .agf-widget__marca .agf-marca { line-height: 1; }
.agf-widget--lista .agf-sub { font-size: .875rem; }
.agf-wlista { display: grid; }
.agf .agf-wlista__item { position: relative; display: grid; grid-template-columns: 48px minmax(0, 1fr); gap: 12px; align-items: start; padding: 12px 8px; margin: 0 -8px; border-radius: 14px; transition: background .2s; }
.agf-wlista__item + .agf-wlista__item::before { content: ""; position: absolute; left: 8px; right: 8px; top: 0; border-top: 1px solid var(--agf-linha); }
.agf-wlista__item:hover { background: color-mix(in srgb, var(--a2) 12%, transparent); }
.agf-wlista__data { display: grid; justify-items: center; padding: 6px 0 7px; border-radius: 13px; background: linear-gradient(150deg, var(--a1), var(--a2)); color: #fff; line-height: 1; box-shadow: 0 6px 14px -8px var(--a1); }
.agf-wlista__data small { font: 800 .5625rem/1 var(--agf-tit); letter-spacing: .08em; text-transform: uppercase; opacity: .9; }
.agf-wlista__data b { font: 800 1.35rem/1 var(--agf-tit); letter-spacing: -.04em; margin: 2px 0 1px; }
.agf-wlista__txt { display: grid; gap: 3px; min-width: 0; }
.agf-wlista__txt .agf-card__tipo { font-size: .625rem; }
.agf .agf-wlista__titulo { font: 800 .9375rem/1.25 var(--agf-tit); color: var(--agf-ink) !important; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.agf-wlista__titulo::after { content: ""; position: absolute; inset: 0; border-radius: 14px; }
.agf-wlista__meta { font-size: .75rem; line-height: 1.35; color: var(--agf-ink-3); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.agf-wlista__gratis { color: var(--agf-gratis); font-weight: 800; }
.agf-wlista__botao { margin-top: 12px; width: 100%; }
html[data-fa-tema="escuro"] .agf-wlista__txt .agf-card__tipo { color: var(--a2); }
html[data-fa-tema]:not([data-fa-tema="escuro"]) .agf-wlista__data { background: transparent; color: inherit; box-shadow: inset 0 0 0 2px currentColor; }
@media (max-width: 1023px) { .agf.agf-widget--desktop { display: none; } }
@media (max-width: 640px) { .agf-widget .agf-trilho__cab .agf-trilho__mais { margin-left: 0; } }
/* tema escuro: nomes dos eventos em branco (o tema de acessibilidade pinta os links de verde, que somem no fundo colorido) */
html[data-fa-tema="escuro"] .agf :is(.agf-card__titulo, .agf-linha__titulo, .agf-sem-destaque__titulo, .agf-evento__titulo, .agf-cartaz__item, .agf-wlista__item) :is(a, a:hover, a:visited),
html[data-fa-tema="escuro"] .agf :is(.agf-card__titulo, .agf-linha__titulo, .agf-sem-destaque__titulo, .agf-evento__titulo) { color: #fff !important; }
