/* Trilha C — identidade visual "nova era" (includes/visual.php). Só carrega com td_layout_visual ligado ou na prévia.
   Tudo fica sob body.td-visual; cada efeito pode ser desligado pela classe body.tdv-off-<efeito>.
   Valores aprovados na vitrine C0 (07/10/2026): holofote 13,8%, inclinação 5°, corrida em câmera lenta 4×. */

body.td-visual {
	--tdv-stage: #050914;
	--tdv-fg: #e8eef8;
	--tdv-muted: #a3b3cc;
	--tdv-line: rgb(148 163 184 / 20%);
	--tdv-spot: rgb(37 99 235 / 13.8%);
	--tdv-glow: radial-gradient(240px circle at var(--tdv-mx) var(--tdv-my), #22d3ee, rgb(37 99 235 / 70%) 35%, transparent 65%);
	--tdv-mono: ui-monospace, "Cascadia Mono", "SFMono-Regular", Consolas, monospace;
}

/* As bordas de luz giram com transform (roda no compositor, fora da thread principal). A 1ª versão animava uma variável
   CSS registrada (@property) e custava estilo + pintura a cada quadro: medido em 07/10, protocolo de subtração. */
@keyframes tdv-gira { from { transform: translate(-50%, -50%) rotate(0turn); } to { transform: translate(-50%, -50%) rotate(1turn); } }
@keyframes tdv-grow { from { transform: scaleX(0); } to { transform: scaleX(1); } }
@keyframes tdv-draw { to { stroke-dashoffset: 0; } }
@keyframes tdv-shine { to { background-position: -220% 0; } }
@keyframes tdv-drift-a { to { transform: translate(18%, 12%) scale(1.15); } }
@keyframes tdv-drift-b { to { transform: translate(-16%, -10%) scale(1.1); } }
@keyframes tdv-blink { 50% { opacity: 0; } }

/* ------------------------------------------------ palco escuro (camadas decorativas, todas aria-hidden) */
.td-visual .tdv-stage { position: relative; isolation: isolate; overflow: hidden; background-color: var(--tdv-stage); color: var(--tdv-fg); }
.td-visual .tdv-camada { position: absolute; inset: 0; max-width: none !important; margin: 0 !important; pointer-events: none; } /* o layout "constrained" do editor centraliza os filhos em 980 px */
.td-visual .tdv-canvas { z-index: -2; display: block; width: 100%; height: 100%; opacity: 0; transition: opacity 1.2s ease; }
.td-visual .tdv-canvas.is-on { opacity: 1; }
.td-visual .tdv-aurora-css { z-index: -3; overflow: hidden; transition: opacity 1.2s ease; }
.td-visual .tdv-aurora-css::before,
.td-visual .tdv-aurora-css::after { content: ""; position: absolute; width: 70%; height: 120%; border-radius: 50%; will-change: transform; }
.td-visual .tdv-aurora-css::before { left: -10%; top: -30%; background: radial-gradient(closest-side, rgb(37 99 235 / 55%), transparent); animation: tdv-drift-a 22s ease-in-out infinite alternate; }
.td-visual .tdv-aurora-css::after { right: -15%; bottom: -40%; background: radial-gradient(closest-side, rgb(6 182 212 / 40%), rgb(124 58 237 / 18%) 55%, transparent); animation: tdv-drift-b 26s ease-in-out infinite alternate; }
.td-visual .tdv-stage.tdv-gl .tdv-aurora-css { opacity: 0; }
.td-visual .tdv-scrim { z-index: -1; background: linear-gradient(100deg, rgb(5 9 20 / 72%) 0%, rgb(5 9 20 / 35%) 55%, rgb(5 9 20 / 10%) 100%); }
.td-visual .tdv-grain { z-index: -1; opacity: 0.14; mix-blend-mode: overlay; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E"); }
.td-visual .tdv-dots { z-index: -1; background-image: radial-gradient(rgb(148 163 184 / 22%) 1px, transparent 1.2px); background-size: 22px 22px; -webkit-mask-image: radial-gradient(ellipse 70% 70% at 70% 40%, #000 20%, transparent 75%); mask-image: radial-gradient(ellipse 70% 70% at 70% 40%, #000 20%, transparent 75%); }
.td-visual .tdv-rede { z-index: -1; }

/* ------------------------------------------------ 01 + 02. topo da Home: aurora + busca em estilo prompt */
.td-visual .tdh-topo.tdv-hero { padding: clamp(2rem, 5.5vw, 4.5rem) 0; border-bottom: 0; background: var(--tdv-stage); }
@media (min-width: 1300px) { .td-visual .tdh-topo.tdv-hero { margin-top: 1rem; border-radius: 24px; border: 1px solid var(--tdv-line); } } /* acima de 1240 px o palco fica em caixa: cantos arredondados */
.td-visual .tdv-hero-in { display: grid; justify-items: start; gap: 1rem; }
.td-visual .tdv-eyebrow { margin: 0; font: 700 0.72rem/1.2 Inter, system-ui, sans-serif; letter-spacing: 0.12em; text-transform: uppercase; color: #7dd3fc; }
.td-visual .tdh-topo .tdh-topo-h1.tdv-hero-h1 { display: block; max-width: 16ch; margin: 0; font: 700 clamp(1.85rem, 1.1rem + 3.4vw, 3.6rem)/1.08 "Space Grotesk", Inter, sans-serif; letter-spacing: -0.03em; color: #fff; text-wrap: balance; }
.td-visual .tdv-shine { background: linear-gradient(100deg, #93c5fd 0%, #67e8f9 30%, #c4b5fd 50%, #67e8f9 70%, #93c5fd 100%); background-size: 220% 100%; -webkit-background-clip: text; background-clip: text; color: transparent; animation: tdv-shine 7s linear 3; } /* 3 passadas e para: background-position não roda no compositor */
.td-visual .tdv-hero-lead { margin: 0; max-width: 52ch; color: var(--tdv-muted); font-size: clamp(1rem, 0.9rem + 0.4vw, 1.2rem); }
.td-visual .tdv-prompt { position: relative; isolation: isolate; overflow: hidden; width: 100%; max-width: 640px; margin-top: 0.35rem; padding: 1.5px; border-radius: 16px; background: rgb(148 163 184 / 22%); }
.td-visual .tdv-prompt::before { content: ""; position: absolute; z-index: -1; left: 50%; top: 50%; width: 150%; aspect-ratio: 1; pointer-events: none; background: conic-gradient(rgb(37 99 235 / 0%) 0deg, #2563eb 70deg, #06b6d4 140deg, #a78bfa 200deg, rgb(37 99 235 / 0%) 260deg); transform: translate(-50%, -50%); animation: tdv-gira 6s linear infinite; }
.td-visual .tdv-prompt:focus-within { box-shadow: 0 0 0 4px rgb(6 182 212 / 18%), 0 0 40px -6px rgb(6 182 212 / 55%); }
.td-visual .tdv-prompt:focus-within::before { animation-duration: 2.2s; }
.td-visual .tdv-prompt .tdh-busca { flex: none; width: 100%; min-width: 0; align-items: center; gap: 0.5rem; padding: 6px 6px 6px 14px; border: 0; border-radius: 14.5px; background: #080e1e; }
.td-visual .tdv-caret { font: 600 1rem/1 var(--tdv-mono); color: #67e8f9; }
.td-visual .tdv-prompt .tdh-busca input { padding: 0.55rem 0 !important; font-size: 1rem; color: var(--tdv-fg); }
.td-visual .tdv-prompt .tdh-busca input::placeholder { color: #8fa0bb; opacity: 1; }
.td-visual .tdv-prompt .tdh-busca button { margin: 0; padding: 0.75rem 1.25rem !important; border-radius: 11px !important; background: linear-gradient(120deg, #2563eb, #0891b2) !important; font-size: 0.9rem; }
.td-visual.tdv-off-busca .tdv-prompt::before { display: none; }
.td-visual.tdv-off-busca .tdv-prompt:focus-within { box-shadow: none; }
.td-visual.tdv-off-aurora .tdv-shine { animation: none; }

/* ------------------------------------------------ 03 + 04. holofote, borda de luz e inclinação 3D */
.td-visual .tdh-card,
.td-visual .tdh-jogo { --tdv-mx: 50%; --tdv-my: 50%; --tdv-rx: 0deg; --tdv-ry: 0deg; transform: perspective(1000px) rotateX(var(--tdv-rx)) rotateY(var(--tdv-ry)); transition: transform 0.35s cubic-bezier(0.2, 0.7, 0.2, 1), box-shadow 0.3s ease; }
.td-visual .tdh-card:hover { transform: perspective(1000px) rotateX(var(--tdv-rx)) rotateY(var(--tdv-ry)) translateY(-2px); }
.td-visual .tdh-card.tdv-tilt,
.td-visual .tdh-jogo.tdv-tilt { transition: transform 0.08s linear, box-shadow 0.3s ease; }
.td-visual .td-topic { --tdv-mx: 50%; --tdv-my: 50%; }
.td-visual .td-topic.tdv-inclina { --tdv-rx: 0deg; --tdv-ry: 0deg; transform: perspective(1000px) rotateX(var(--tdv-rx)) rotateY(var(--tdv-ry)); transition: transform 0.35s cubic-bezier(0.2, 0.7, 0.2, 1), box-shadow 0.3s ease, border-color 0.3s ease; }
.td-visual .td-topic.tdv-inclina:hover { transform: perspective(1000px) rotateX(var(--tdv-rx)) rotateY(var(--tdv-ry)) translateY(-4px); }
.td-visual .td-topic.tdv-inclina.tdv-tilt { transition: transform 0.08s linear, box-shadow 0.3s ease, border-color 0.3s ease; }
.td-visual .tdh-card::before { content: ""; position: absolute; inset: 0; z-index: 2; border-radius: inherit; pointer-events: none; opacity: 0; transition: opacity 0.3s ease; background: radial-gradient(420px circle at var(--tdv-mx) var(--tdv-my), var(--tdv-spot), transparent 45%); }
.td-visual .td-topic:hover { background-image: radial-gradient(420px circle at var(--tdv-mx) var(--tdv-my), var(--tdv-spot), transparent 45%); }
.td-visual .tdh-card::after,
.td-visual .td-topic::after,
.td-visual .tdh-jogo::before { content: ""; position: absolute; inset: 0; z-index: 3; padding: 1.5px; border-radius: inherit; pointer-events: none; opacity: 0; transition: opacity 0.3s ease; background: var(--tdv-glow); -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); -webkit-mask-composite: xor; mask-composite: exclude; }
.td-visual .tdh-card:hover::before,
.td-visual .tdh-card:hover::after,
.td-visual .td-topic:hover::after,
.td-visual .tdh-jogo:hover::before { opacity: 1; }
.td-visual.tdv-off-spot .tdh-card::before,
.td-visual.tdv-off-spot .tdh-card::after,
.td-visual.tdv-off-spot .td-topic::after,
.td-visual.tdv-off-spot .tdh-jogo::before { display: none; }
.td-visual.tdv-off-spot .td-topic:hover { background-image: none; }
.td-visual .tdh-card:hover .tdh-img { transform: scale(1.06); }

/* ------------------------------------------------ 05 + 07. faixa do Laboratório na Home: partículas, contadores e barras */
.td-visual .tdh-lab.tdv-stage { background-color: #050b18; }
.td-visual .tdv-barra { grid-column: 1 / -1; display: block; height: 4px; margin-top: 0.1rem; border-radius: 99px; background: rgb(148 163 184 / 14%); overflow: hidden; }
.td-visual .tdv-barra i { display: block; width: var(--w); height: 100%; border-radius: inherit; background: linear-gradient(90deg, #2563eb, #22d3ee); transform-origin: 0 50%; }
@supports (animation-timeline: view()) {
	.td-visual:not(.tdv-off-barras) .tdv-barra i { animation: tdv-grow linear both; animation-timeline: view(); animation-range: entry 20% cover 45%; }
}

/* ------------------------------------------------ 06. corrida de tokens */
.td-visual .tdv-corrida { display: grid; gap: 0.9rem; margin-top: 2rem; padding: 1.1rem; border-radius: 18px; background: rgb(255 255 255 / 4%); border: 1px solid var(--tdv-line); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); color: var(--tdv-fg); text-align: left; }
.td-visual .tdv-corrida-topo { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 0.6rem; }
.td-visual .tdv-corrida-topo h3 { margin: 0 !important; color: #fff !important; font-size: 1.05rem !important; }
.td-visual .tdv-btn-vazado { padding: 0.5rem 0.9rem; border: 1px solid var(--tdv-line); border-radius: 999px; background: rgb(255 255 255 / 6%); color: var(--tdv-fg); font: 600 0.8rem/1 Inter, system-ui, sans-serif; letter-spacing: normal; text-transform: none; box-shadow: none; cursor: pointer; }
.td-visual .tdv-btn-vazado:hover { background: rgb(255 255 255 / 12%); }
.td-visual .tdv-corrida-q { margin: 0 !important; font: 400 0.82rem/1.5 var(--tdv-mono); color: #67e8f9 !important; }
.td-visual .tdv-corrida-q::before { content: "> "; color: var(--tdv-muted); }
.td-visual .tdv-raias { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.75rem; }
.td-visual .tdv-raia { display: grid; align-content: start; gap: 0.5rem; min-width: 0; padding: 0.8rem 0.9rem; border-radius: 14px; background: rgb(5 9 20 / 60%); border: 1px solid var(--tdv-line); }
.td-visual .tdv-raia p { margin: 0 !important; }
.td-visual .tdv-raia-topo { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 0.2rem 0.8rem; font-size: 0.86rem; color: #fff !important; }
.td-visual .tdv-raia-topo span { font: 400 0.78rem/1.3 var(--tdv-mono); color: #7dd3fc; }
.td-visual .tdv-raia-texto { font: 400 0.8rem/1.6 var(--tdv-mono); color: var(--tdv-fg) !important; overflow-wrap: anywhere; }
.td-visual .tdv-raia-texto .tk { transition: opacity 0.1s linear; }
.td-visual .tdv-correndo .tdv-raia-texto .tk { opacity: 0.2; }
.td-visual .tdv-correndo .tdv-raia-texto .tk.on { opacity: 1; }
.td-visual .tdv-raia-texto .tk.cur::after { content: "\258D"; color: #22d3ee; animation: tdv-blink 1s steps(1) infinite; }
.td-visual .tdv-raia-trilho { display: block; height: 3px; border-radius: 99px; background: rgb(148 163 184 / 14%); overflow: hidden; }
.td-visual .tdv-raia-trilho i { display: block; height: 100%; background: linear-gradient(90deg, #2563eb, #22d3ee); transform-origin: 0 50%; transform: scaleX(var(--p, 1)); }
.td-visual .tdv-raia-meta { display: flex; justify-content: space-between; gap: 0.5rem; font: 400 0.74rem/1.3 var(--tdv-mono); color: var(--tdv-muted) !important; }
.td-visual .tdv-raia-lugar { color: #fde68a; font-weight: 600; }
.td-visual .tdv-corrida-nota { margin: 0 !important; font-size: 0.74rem !important; color: var(--tdv-muted) !important; }

/* ------------------------------------------------ topo do Laboratório (visão geral) como palco */
.td-visual .td-lab-hero.tdv-stage { background-color: var(--tdv-stage); }
.td-visual .td-lab-hero.tdv-stage::before { display: none; }
.td-visual .td-lab-hero .td-hero-title { color: #fff !important; }
.td-visual .td-lab-hero .td-grad { background-image: linear-gradient(100deg, #93c5fd, #67e8f9 45%, #c4b5fd); }
.td-visual .td-lab-hero .td-hero-sub { color: var(--tdv-muted); }
.td-visual .td-lab-hero .td-eyebrow { color: #7dd3fc; }
.td-visual .td-lab-hero .is-style-outline .wp-block-button__link { color: #fff !important; border-color: rgb(255 255 255 / 55%) !important; background: transparent !important; }
.td-visual .td-lab-hero .tdv-scrim { background: radial-gradient(70% 70% at 50% 45%, rgb(5 9 20 / 62%), rgb(5 9 20 / 20%)); }
.td-visual .tdv-lab-hero + .td-lab-nav { margin-top: 1.5rem !important; } /* abas do Lab desgrudadas do palco (pedido do Luis) */
.td-visual .td-lab-band.tdv-stage { overflow: hidden; }
.td-visual .td-lab-band .tdv-corrida { margin-top: 1.75rem; }
.td-visual .td-lab-band .tdv-corrida h3 { font-family: "Space Grotesk", Inter, sans-serif; }

/* ------------------------------------------------ Arena: escolha do desafio com a capa do jogo (mesmas imagens da Home) */
.td-visual .td-arena-desafios { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; }
.td-visual .td-arena-desafio {
	--tdv-rx: 0deg; --tdv-ry: 0deg;
	position: relative; isolation: isolate; overflow: hidden; aspect-ratio: 4 / 3; min-width: 0 !important;
	justify-content: flex-end; padding: 0.9rem !important;
	background: #0f172a var(--tdv-capa, none) center / cover no-repeat !important;
	border: 1px solid rgb(148 163 184 / 25%) !important;
	transform: perspective(1000px) rotateX(var(--tdv-rx)) rotateY(var(--tdv-ry)) !important;
	transition: transform 0.35s cubic-bezier(0.2, 0.7, 0.2, 1), box-shadow 0.3s ease, border-color 0.3s ease;
}
.td-visual .td-arena-desafio.tdv-tilt { transition: transform 0.08s linear, box-shadow 0.3s ease, border-color 0.3s ease; }
.td-visual .td-arena-desafio::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, rgb(2 6 23 / 5%) 35%, rgb(2 6 23 / 90%)); transition: background 0.3s ease; }
.td-visual .td-arena-desafio:hover { box-shadow: 0 18px 40px -18px rgb(6 182 212 / 55%) !important; }
.td-visual .td-arena-desafio strong { font-size: 1.1rem; letter-spacing: 0.02em; text-shadow: 0 1px 8px rgb(0 0 0 / 60%); }
.td-visual .td-arena-desafio span { position: absolute; top: 0.7rem; left: 0.7rem; padding: 0.2rem 0.6rem; border-radius: 999px; background: #15803d; color: #fff !important; font: 700 0.7rem/1.4 Inter, system-ui, sans-serif; }
.td-visual .td-arena-desafio.on { border: 2px solid #22d3ee !important; box-shadow: 0 0 0 4px rgb(34 211 238 / 18%), 0 18px 40px -18px rgb(6 182 212 / 60%) !important; }
.td-visual .td-arena-desafio.on::after { background: linear-gradient(180deg, rgb(6 182 212 / 12%) 35%, rgb(2 6 23 / 88%)); }
@media (max-width: 900px) { .td-visual .td-arena-desafios { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
/* Capas dos jogos nos cards do placar (td-lab-app.js, capaJogo): moldura em 16:9 quando há print, zoom leve no hover. */
.td-visual .td-arena-art:has(.td-arena-capa, .td-arena-sem-capa) { height: auto; aspect-ratio: 16 / 9; overflow: hidden; }
.td-visual .td-arena-capa { transition: transform 0.5s cubic-bezier(0.2, 0.7, 0.2, 1); }
.td-visual .td-arena-card:hover .td-arena-capa { transform: scale(1.05); }
.td-visual .td-arena-free { z-index: 1; }

/* ------------------------------------------------ 08. ícones dos cartões de tema, desenhados no scroll */
.td-visual .td-topic { padding-right: 4.4rem; }
/* O cartão tinha overflow: hidden, que o torna um contêiner de rolagem: a view-timeline do ícone passava a seguir o
   cartão (que nunca rola) e o ícone já nascia desenhado. "clip" corta igual sem virar contêiner de rolagem (08/10). */
.td-visual .td-card:has(> .tdv-icone) { overflow: clip !important; }
.td-visual .tdv-icone { position: absolute; top: 1.1rem; right: 1.1rem; width: 40px; height: 40px; padding: 8px; border-radius: 12px; background: rgb(37 99 235 / 10%); color: #1d4ed8; overflow: visible; pointer-events: none; view-timeline: --tdv-ic block; }
html[data-theme="dark"] .td-visual .tdv-icone { background: rgb(59 130 246 / 16%); color: #7fb0ff; }
.td-visual .tdv-icone * { fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
@supports (animation-timeline: view()) {
	.td-visual:not(.tdv-off-icones) .tdv-icone * { stroke-dasharray: 1; stroke-dashoffset: 1; animation: tdv-draw linear both; animation-timeline: --tdv-ic; animation-range: entry 10% cover 35%; }
}

/* ------------------------------------------------ 09. newsletter: borda aurora, brilho e botão magnético */
.td-visual:not(.tdv-off-news) .td-newsletter { position: relative; isolation: isolate; overflow: hidden; border: 0 !important; background: transparent; }
.td-visual:not(.tdv-off-news) .td-newsletter::before { content: ""; position: absolute; z-index: -2; left: 50%; top: 50%; width: max(150%, 640px); aspect-ratio: 1; pointer-events: none; background: conic-gradient(#2563eb, #06b6d4, #a78bfa, #2563eb); transform: translate(-50%, -50%); animation: tdv-gira 9s linear infinite; }
.td-visual:not(.tdv-off-news) .td-newsletter::after { content: ""; position: absolute; z-index: -1; inset: 2px; border-radius: 22px; pointer-events: none; background: var(--ast-global-color-7, #f1f5f9); }
/* Brilho que atravessa o botão ao passar o mouse: camada própria (::before), porque o botão do Fluent Forms tem
   "background ... !important" no td-site.css e anulava o brilho feito com background-image (corrigido em 07/10). */
.td-visual:not(.tdv-off-news) :is(.tdv-prompt .tdh-busca button, .td-newsletter .ff-btn-submit, .td-newsletter .wp-block-button__link, .tdh-botao, .td-lab-hero .wp-block-button__link) { position: relative; overflow: hidden; isolation: isolate; }
.td-visual:not(.tdv-off-news) :is(.tdv-prompt .tdh-busca button, .td-newsletter .ff-btn-submit, .td-newsletter .wp-block-button__link, .tdh-botao, .td-lab-hero .wp-block-button__link)::before {
	content: ""; position: absolute; z-index: -1; top: -10%; bottom: -10%; left: -60%; width: 45%; pointer-events: none;
	background: linear-gradient(90deg, transparent, rgb(255 255 255 / 45%), transparent);
	transform: skewX(-20deg) translateX(0); transition: transform 0.65s ease;
}
.td-visual:not(.tdv-off-news) :is(.tdv-prompt .tdh-busca button, .td-newsletter .ff-btn-submit, .td-newsletter .wp-block-button__link, .tdh-botao, .td-lab-hero .wp-block-button__link):is(:hover, :focus-visible)::before { transform: skewX(-20deg) translateX(420%); }
.td-visual .td-newsletter .ff-btn-submit { transition: transform 0.25s cubic-bezier(0.2, 0.7, 0.2, 1), box-shadow 0.25s ease; }

/* ------------------------------------------------ 10. troca de tema em círculo (o td-theme.js liga a classe só durante a troca) */
html.tdv-vt::view-transition-old(root),
html.tdv-vt::view-transition-new(root) { animation: none; mix-blend-mode: normal; }

/* ------------------------------------------------ 11. barra de progresso da rolagem, no pé do cabeçalho */
@supports (animation-timeline: scroll()) {
	.td-visual:not(.tdv-off-progresso) #masthead::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; z-index: 5; height: 2px; pointer-events: none; transform-origin: 0 50%; background: linear-gradient(90deg, #2563eb, #06b6d4, #7c3aed); animation: tdv-grow linear both; animation-timeline: scroll(root); }
}

/* ------------------------------------------------ responsivo e menos movimento */
@media (max-width: 900px) {
	.td-visual .tdv-raias { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 560px) {
	.td-visual .tdv-prompt .tdh-busca button { padding: 0.7rem 0.9rem !important; }
	.td-visual .td-topic { padding-right: 1.5rem; padding-top: 4.2rem; }
	.td-visual .tdv-icone { left: 1.5rem; right: auto; top: 1.2rem; }
}
@media (prefers-reduced-motion: reduce) {
	.td-visual .tdv-aurora-css::before, .td-visual .tdv-aurora-css::after, .td-visual .tdv-shine, .td-visual .tdv-prompt::before, .td-visual .td-newsletter::before { animation: none !important; }
	.td-visual .tdv-icone * { animation: none !important; stroke-dashoffset: 0 !important; }
	.td-visual .tdv-barra i { animation: none !important; transform: none !important; }
	.td-visual #masthead::after { display: none; }
}
