/* Elementos globais do novo desenho: rodapé de papel (todas as páginas). */
html body .alem-footer { background: var(--alem-papel, #f6f3ee) !important; color: var(--alem-tinta, #111213) !important; border-top: 3px double var(--alem-tinta, #111213); box-shadow: none; }
html body .alem-footer * { border-color: var(--alem-linha-forte, #c9c0b4); }
html body .alem-footer .alem-footer-brand, html body .alem-footer p, html body .alem-footer li, html body .alem-footer .alem-core-publication-tagline { color: var(--alem-tinta, #111213) !important; }
html body .alem-footer .alem-footer-brand { font: italic 650 clamp(34px, 4vw, 48px)/1 var(--alem-f-titulo, "Fraunces", serif); letter-spacing: -.03em; }
html body .alem-footer .alem-core-publication-tagline, html body .alem-footer .alem-footer-grid > div:first-child p:not(.alem-footer-brand) { color: var(--alem-texto2, #5b5751) !important; font: 400 15px/1.4 var(--alem-f-leitura, "Source Serif 4", serif); }
html body .alem-footer h3 { color: var(--alem-verde, #067378) !important; font: 700 11px/1.2 var(--alem-f-interface, "Source Sans 3", sans-serif); letter-spacing: .16em; text-transform: uppercase; }
html body .alem-footer a { color: var(--alem-tinta, #111213) !important; font: 600 14.5px/1.4 var(--alem-f-interface, "Source Sans 3", sans-serif); text-decoration: none; transition: color .2s ease; }
html body .alem-footer a:is(:hover, :focus-visible) { color: var(--alem-verde-hover, #05565a) !important; }
html body .alem-footer :is(.alem-footer-bottom, .alem-footer-legal, small) { color: var(--alem-texto2, #5b5751) !important; font: 500 10.5px/1.4 var(--alem-f-mono, "IBM Plex Mono", monospace); letter-spacing: .14em; text-transform: uppercase; }

/* ===== Compartilhar nas matérias: botões redondos com a animação do eclipse. ===== */
.alem-article-sharing-links a { position: relative; overflow: hidden; isolation: isolate; width: 34px; height: 34px; border-radius: 50%; display: inline-grid; place-items: center; border: var(--alem-contorno, 1.5px solid #111213); background: transparent !important; color: var(--alem-tinta, #111213); transition: color .2s .06s, box-shadow .32s var(--alem-curva, cubic-bezier(.2,0,0,1)); }
.alem-article-sharing-links a::before { content: ""; position: absolute; inset: -1px; border-radius: inherit; background: var(--alem-nanquim, #0c0d0e); transform: translateX(-102%); transition: transform .34s var(--alem-curva-entrada, cubic-bezier(.05,.7,.1,1)); z-index: -1; }
.alem-article-sharing-links a::after { content: ""; position: absolute; inset: 0; border-radius: inherit; opacity: 0; z-index: -1; background: repeating-linear-gradient(180deg, color-mix(in srgb, var(--alem-ciano-claro, #92e1dd) 16%, transparent) 0 1px, transparent 1px 3px); transition: opacity .2s .14s; }
.alem-article-sharing-links a:is(:hover, :focus-visible)::before { transform: none; }
.alem-article-sharing-links a:is(:hover, :focus-visible)::after { opacity: 1; }
.alem-article-sharing-links a:is(:hover, :focus-visible) { color: var(--alem-papel, #f6f3ee); transform: none; filter: none; box-shadow: 0 0 0 1px var(--alem-ciano, #36aeb0), 0 0 14px color-mix(in srgb, var(--alem-ciano, #36aeb0) 45%, transparent); animation: alem-aceso .9s var(--alem-curva, cubic-bezier(.2,0,0,1)) 1; }
.alem-article-sharing-links a svg { width: 16px; height: 16px; color: inherit; fill: none; }

@media (prefers-reduced-motion: reduce) { .alem-article-sharing-links a::before { transform: none; opacity: 0; } .alem-article-sharing-links a:hover { animation: none; } }
.alem-article-sharing-links { display: flex; gap: 10px; flex-wrap: wrap; }

/* ===== Rodapé: o logotipo é a imagem, não um texto. ===== */
html body .alem-footer .alem-footer-brand { font-size: 0 !important; width: 170px; height: 52px; margin: 0 0 10px; background: url("../images/alem-logo-dark-v7.png") left center / contain no-repeat; }
/* O logotipo já traz o eclipse: o eclipse solto que o plugin de cookies põe dentro do bloco ficava por cima do "a". */
html body .alem-footer .alem-footer-brand .alem-footer-eclipse { display: none !important; }

/* ===== "Entrar" / "Minha conta": sem piscar nem encolher o texto ao passar o mouse. ===== */
@media (min-width: 781px) {
  html body .alem-site-header .alem-topline-actions a.alem-reader-access, html body .alem-site-header .alem-topline-actions a.alem-reader-access:is(:hover, :focus-visible, :active) {
    min-height: 44px; padding: 0 22px !important; border: 0 !important; background-color: var(--alem-botao-fundo, #0c0d0e) !important; background-image: none !important; background-size: auto !important; color: var(--alem-papel, #f6f3ee) !important;
    font: 700 11.5px/1 var(--alem-f-interface, "Source Sans 3", sans-serif) !important; letter-spacing: .14em !important; text-decoration: none !important; transform: none !important; transition: box-shadow .24s var(--alem-curva, cubic-bezier(.2,0,0,1)) !important; box-shadow: 0 0 0 1px var(--alem-botao-fundo, #0c0d0e) !important;
  }
  html body .alem-site-header .alem-topline-actions a.alem-reader-access:is(:hover, :focus-visible, :active) { box-shadow: var(--alem-brilho-hover, 0 0 0 1px #36aeb0, 0 0 22px rgba(54,174,176,.45)) !important; }
  html body.home:is(.alem-home-dark-header, .alem-home-teal-header) .alem-site-header .alem-topline-actions a.alem-reader-access, html body.home:is(.alem-home-dark-header, .alem-home-teal-header) .alem-site-header .alem-topline-actions a.alem-reader-access:is(:hover, :focus-visible, :active) { background-color: var(--alem-papel, #f6f3ee) !important; color: var(--alem-botao-fundo, #0c0d0e) !important; box-shadow: 0 0 0 1px var(--alem-papel, #f6f3ee) !important; }
}

/* ===== Tamanho do texto: três "A" numa cápsula de areia; o atual em pílula de papel com contorno. ===== */
.alem-text-size { display: inline-flex; align-items: center; gap: 2px; padding: 4px; border-radius: 999px; background: var(--alem-areia, #e9e4db); color: var(--alem-tinta, #111213); width: fit-content; margin: 0 0 18px; }
.alem-text-size .alem-text-size-opt { display: inline-grid; place-items: center; width: auto; min-width: 52px; height: 44px; padding: 0; border: 1.5px solid transparent; border-radius: 999px; background: transparent; color: var(--alem-tinta, #111213); font: 650 14px/1 var(--alem-f-titulo, "Fraunces", serif); cursor: pointer; transition: background-color .22s var(--alem-curva, cubic-bezier(.2,0,0,1)), box-shadow .24s var(--alem-curva, cubic-bezier(.2,0,0,1)), border-color .2s ease; }
.alem-text-size .alem-text-size-opt:nth-child(2) span { font-size: 17px; }
.alem-text-size .alem-text-size-opt:nth-child(3) span { font-size: 21px; }
.alem-text-size .alem-text-size-opt[aria-pressed="true"] { background: var(--alem-campo, #fffdfa); border-color: var(--alem-tinta, #111213); }
.alem-text-size .alem-text-size-opt:is(:hover, :focus-visible) { box-shadow: 0 0 0 1px color-mix(in srgb, var(--alem-ciano, #36aeb0) 50%, transparent), 0 0 12px color-mix(in srgb, var(--alem-ciano, #36aeb0) 30%, transparent); }
.alem-text-size-rail { display: none; }
@media (min-width: 781px) {
  .alem-text-size-rail { display: block; grid-column: 1; grid-row: 1; align-self: start; position: sticky; top: 110px; z-index: 1; }
  .alem-text-size-title { display: block; margin: 0 0 8px; font: 500 10px/1.2 var(--alem-f-mono, "IBM Plex Mono", monospace); letter-spacing: .16em; text-transform: uppercase; color: var(--alem-texto-suave, #3b3935); }
  .alem-text-size-rail .alem-text-size { margin: 0; }
}
@media (max-width: 780px) { .alem-text-size-rail { display: none; } body.single-post .alem-text-size { display: none; } }

/* ===== "Mais para ver e ler": sem cartão que sobe nem borda encostando no texto. ===== */
html body :is(.single-post, .single-alem_video) .alem-core-continuation-group .alem-core-front-card, html body.single .alem-core-continuation-group .alem-core-front-card { border: 0 !important; background: none !important; box-shadow: none !important; padding: 0 !important; transition: none; }
html body.single .alem-core-continuation-group .alem-core-front-card:is(:hover, :focus-within) { transform: none !important; border: 0 !important; background: none !important; box-shadow: none !important; }
html body.single .alem-core-continuation-group .alem-core-front-card:is(:hover, :focus-within) h3 a { color: var(--alem-verde-hover, #05565a); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 5px; }
html body.single .alem-core-front-card-image { border-radius: var(--alem-raio-jornal-p, 18px 4px 4px 4px); overflow: hidden; }

/* "Entrar / Minha conta": o hover não pode trocar fonte, espaçamento, margens nem contorno (regras antigas eram mais específicas). */
@media (min-width: 781px) {
  html body .alem-site-header .alem-topline-actions a.alem-reader-access.alem-reader-access:is(:hover, :focus, :focus-visible, :active),
  html body.home.home .alem-site-header .alem-topline-actions a.alem-reader-access.alem-reader-access:is(:hover, :focus, :focus-visible, :active) {
    font-size: 11.5px !important; letter-spacing: .14em !important; padding: 0 22px !important; border-width: 0 !important; min-height: 44px !important; height: auto; transform: none !important;
  }
}
@media (min-width: 781px) {
  html body .alem-site-header .alem-topline-actions a.alem-reader-access.alem-reader-access { min-height: 44px !important; height: 44px; display: inline-flex; align-items: center; }
  html body .alem-site-header .alem-topline-actions a.alem-reader-access.alem-reader-access:is(:hover, :focus, :focus-visible, :active) { background-color: var(--alem-botao-fundo, #0c0d0e) !important; background-image: none !important; color: var(--alem-papel, #f6f3ee) !important; height: 44px; }
  html body.home:is(.alem-home-dark-header, .alem-home-teal-header) .alem-site-header .alem-topline-actions a.alem-reader-access.alem-reader-access, html body.home:is(.alem-home-dark-header, .alem-home-teal-header) .alem-site-header .alem-topline-actions a.alem-reader-access.alem-reader-access:is(:hover, :focus, :focus-visible, :active) { background-color: var(--alem-papel, #f6f3ee) !important; color: var(--alem-botao-fundo, #0c0d0e) !important; }
}

/* Sem deslocar a página quando uma camada abre (busca, gaveta, comentários) e a rolagem some. */
html { scrollbar-gutter: stable; }

/* Botões redondos de compartilhar (coluna e reportagem especial). */
.alem-coluna-compartilhar { display: inline-flex; gap: 8px; }
.alem-coluna-compartilhar :is(a, button) { display: inline-grid; place-items: center; width: 34px; height: 34px; padding: 0; border: var(--alem-contorno, 1.5px solid #111213); border-radius: 50%; background: transparent; color: var(--alem-tinta, #111213); cursor: pointer; transition: background-color .24s var(--alem-curva, cubic-bezier(.2,0,0,1)), color .2s ease, box-shadow .3s ease; }
.alem-coluna-compartilhar :is(a, button):is(:hover, :focus-visible) { background: var(--alem-botao-fundo, #0c0d0e); color: var(--alem-papel, #f6f3ee); box-shadow: 0 0 0 1px var(--alem-ciano, #36aeb0), 0 0 14px color-mix(in srgb, var(--alem-ciano, #36aeb0) 45%, transparent); }
.alem-coluna-compartilhar svg { width: 14px; height: 14px; }

/* Cabeçalho novo (lupa em ícone, Apoie em texto, sem link de boletim) também nas demais páginas, não só nas matérias. */
body:not(.home):is(.alem-support-page, .page, .archive, .search, .error404, .author, .blog) .alem-site-header .alem-topline-actions .alem-header-newsletter { display: none !important; }
body:not(.home):is(.alem-support-page, .page, .archive, .search, .error404, .author, .blog) .alem-site-header .alem-topline-actions .alem-header-search {
  position: relative;
  display: grid !important;
  width: 42px;
  height: 42px;
  place-items: center;
  overflow: visible;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 50% !important;
  background: transparent !important;
  box-shadow: none !important;
  color: transparent !important;
  font-size: 0 !important;
  line-height: 0 !important;
  text-indent: -999px;
  text-decoration: none;
  transform: none !important;
  animation: none !important;
}
body:not(.home):is(.alem-support-page, .page, .archive, .search, .error404, .author, .blog) .alem-site-header .alem-topline-actions .alem-header-search::before {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  border: 0;
  border-radius: 0;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23171a1c' stroke-width='1.8' stroke-linecap='round'%3E%3Ccircle cx='10.8' cy='10.8' r='6.2'/%3E%3Cpath d='m15.4 15.4 4.2 4.2'/%3E%3C/svg%3E") center / 21px 21px no-repeat;
  content: "";
}
body:not(.home):is(.alem-support-page, .page, .archive, .search, .error404, .author, .blog) .alem-site-header .alem-topline-actions .alem-header-search::after {
  content: none !important;
}
body:not(.home):is(.alem-support-page, .page, .archive, .search, .error404, .author, .blog) .alem-site-header .alem-topline-actions .alem-header-search:is(:hover, :focus-visible) {
  background: color-mix(in srgb, var(--alem-ink, #111213) 7%, transparent) !important;
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--alem-verde, #067378) 12%, transparent) !important;
}
body:not(.home):is(.alem-support-page, .page, .archive, .search, .error404, .author, .blog) .alem-site-header .alem-topline-actions .alem-header-search-form {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  z-index: 30;
  width: 0;
  min-width: 0;
  display: flex;
  gap: 0;
  overflow: hidden;
  padding: 0;
  border: 0 solid var(--alem-rule);
  border-radius: 16px;
  background: var(--alem-paper);
  box-shadow: 0 10px 26px color-mix(in srgb, var(--alem-ink, #111213) 13%, transparent);
  opacity: 0;
  visibility: hidden;
  transform: translateY(-6px) scaleX(.97);
  transform-origin: top right;
  transition: width 250ms ease, gap 180ms ease, padding 180ms ease, border-width 180ms ease, opacity 150ms ease, transform 220ms ease, visibility 160ms;
}
body:not(.home):is(.alem-support-page, .page, .archive, .search, .error404, .author, .blog) .alem-site-header .alem-topline-actions.alem-search-open .alem-header-search-form {
  width: min(390px, calc(100vw - 36px));
  gap: 8px;
  padding: 7px;
  border-width: 1px;
  opacity: 1;
  visibility: visible;
  transform: translateY(0) scaleX(1);
}
body:not(.home):is(.alem-support-page, .page, .archive, .search, .error404, .author, .blog) .alem-site-header .alem-topline-actions .alem-header-search-form input { min-width: 0; flex: 1; padding: 12px 14px; border: 1px solid var(--alem-rule); border-radius: 12px; background: transparent; color: var(--alem-ink); font: 16px var(--alem-sans); }
body:not(.home):is(.alem-support-page, .page, .archive, .search, .error404, .author, .blog) .alem-site-header .alem-topline-actions .alem-header-search-form button { padding: 0 18px; border: 0; border-radius: 999px; background: var(--alem-ink); color: var(--alem-paper); font: 700 11px var(--alem-sans); letter-spacing: .1em; text-transform: uppercase; }

@media (max-width: 780px) {
  body:not(.home):is(.alem-support-page, .page, .archive, .search, .error404, .author, .blog) .alem-site-header .alem-topline-actions .alem-header-search { width: 40px; height: 40px; }
  body:not(.home):is(.alem-support-page, .page, .archive, .search, .error404, .author, .blog) .alem-site-header .alem-topline-actions.alem-search-open .alem-header-search-form { width: min(310px, calc(100vw - 36px)); }
}
body:not(.home):is(.alem-support-page, .page, .archive, .search, .error404, .author, .blog) .alem-site-header .alem-topline-actions .alem-header-search::before {
  border-radius: 0;
  background: none;
  content: "⌕";
  color: var(--alem-ink);
  font: 400 27px/1 var(--alem-sans);
  text-indent: 0;
}
body:not(.home):is(.alem-support-page, .page, .archive, .search, .error404, .author, .blog) .alem-site-header .alem-topline-actions .alem-header-search:is(:hover, :focus-visible) {
  background: color-mix(in srgb, var(--alem-ink, #111213) 7%, transparent) !important;
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--alem-accent, #067378) 12%, transparent) !important;
}
body:not(.home):is(.alem-support-page, .page, .archive, .search, .error404, .author) .alem-site-header .alem-topline-actions .alem-header-apoie { background: transparent; }

/* ===== Cabeçalho reorganizado ===== */
/* Conta com foto: só um círculo; "Minha conta" aparece como legenda ao passar o mouse. */
html body .alem-site-header .alem-topline-actions a.alem-reader-access.is-avatar { position: relative; display: inline-grid; place-items: center; width: 44px; height: 44px; min-height: 44px !important; padding: 0 !important; border-radius: 50% !important; border: 1.5px solid var(--alem-tinta, #111213) !important; background: var(--alem-areia, #e9e4db) !important; overflow: visible; font-size: 0 !important; transition: box-shadow .24s var(--alem-curva, cubic-bezier(.2,0,0,1)); }
html body .alem-site-header .alem-topline-actions a.alem-reader-access.is-avatar:is(:hover, :focus-visible) { box-shadow: 0 0 0 1px var(--alem-ciano, #36aeb0), 0 0 14px color-mix(in srgb, var(--alem-ciano, #36aeb0) 40%, transparent) !important; }
html body .alem-site-header .alem-access-avatar { display: block; width: 100%; height: 100%; border-radius: 50%; object-fit: cover; }
html body .alem-site-header .alem-access-tip { position: absolute; z-index: 5; top: calc(100% + 10px); right: 0; padding: 7px 10px; border-radius: 6px; background: var(--alem-botao-fundo, #0c0d0e); color: var(--alem-papel, #f6f3ee); font: 500 10px/1 var(--alem-f-mono, "IBM Plex Mono", monospace); letter-spacing: .14em; text-transform: uppercase; white-space: nowrap; opacity: 0; transform: translateY(-4px); pointer-events: none; transition: opacity .18s ease, transform .18s ease; }
html body .alem-site-header .alem-access-tip::before { content: ""; position: absolute; top: -4px; right: 16px; width: 8px; height: 8px; background: inherit; transform: rotate(45deg); }
html body .alem-site-header a.is-avatar:is(:hover, :focus-visible) .alem-access-tip { opacity: 1; transform: none; }
@media (max-width: 780px) { html body .alem-site-header .alem-topline-actions a.alem-reader-access.is-avatar { width: 40px; height: 40px; min-height: 40px !important; } }

/* Receba o boletim: link depois de "Sobre", com divisória e cor própria. */
html body.home .alem-home-editorias .alem-home-editorias-sep { display: inline-block; width: 1px; height: 16px; margin: 0 4px; background: var(--alem-linha-forte, #c9c0b4); align-self: center; }
html body.home .alem-home-editorias a.alem-home-editorias-boletim { color: var(--alem-verde, #067378); font-weight: 700; }
html body.home .alem-home-editorias a.alem-home-editorias-boletim:is(:hover, :focus-visible) { color: var(--alem-verde-hover, #05565a); text-decoration: underline; text-underline-offset: 5px; }

/* Seletor de seções centralizado na página; busca e "Apoie" encostam à direita. */
@media (min-width: 900px) {
  html body.home .alem-site-header .alem-header-bar { position: relative; }
  html body.home .alem-site-header .alem-home-section-nav { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); margin: 0; }
  html body.home .alem-site-header .alem-topline-actions { margin-left: auto; }
}
html body .alem-site-header .alem-topline-actions a.alem-reader-access.alem-reader-access.is-avatar { display: inline-grid !important; flex: 0 0 44px; width: 44px !important; min-width: 44px !important; max-width: 44px !important; height: 44px !important; padding: 0 !important; }
@media (max-width: 780px) { html body .alem-site-header .alem-topline-actions a.alem-reader-access.alem-reader-access.is-avatar { flex-basis: 40px; width: 40px !important; min-width: 40px !important; max-width: 40px !important; height: 40px !important; } }
html body .alem-site-header a.alem-reader-access.is-avatar .alem-access-avatar { position: absolute; inset: 0; width: 100% !important; height: 100% !important; opacity: 1 !important; border-radius: 50%; object-fit: cover; }
html body .alem-site-header a.alem-reader-access.is-avatar { background: var(--alem-areia, #e9e4db) !important; overflow: visible; }

/* ===== Barra de progresso de leitura: trilho de areia sob o cabeçalho + preenchimento néon ===== */
.alem-reading-track { position: fixed; left: 0; right: 0; top: 68px; z-index: 999; height: 3px; background: var(--alem-areia, #e9e4db); pointer-events: none; }
html body .alem-reading-progress { z-index: 1000; top: 68px; height: 3px; background: var(--alem-ciano, #36aeb0); box-shadow: 0 0 10px color-mix(in srgb, var(--alem-ciano, #36aeb0) 75%, transparent); transition: top .2s ease; }
html body .alem-reading-progress::after { content: ""; position: absolute; right: -3px; top: 50%; width: 7px; height: 7px; margin-top: -3.5px; border-radius: 50%; background: var(--alem-ciano-claro, #92e1dd); box-shadow: 0 0 10px 2px color-mix(in srgb, var(--alem-ciano, #36aeb0) 90%, transparent); }
@media (prefers-reduced-motion: reduce) { html body .alem-reading-progress { transition: none; } }

/* Apoie o além nas demais páginas: o mesmo botão em pílula contornada da página inicial. */
@media (min-width: 1101px) {
  html body:not(.home):not(.alem-support-page) .alem-site-header .alem-topline-actions a.alem-header-apoie { display: inline-flex !important; align-items: center; gap: 8px; min-height: 44px; padding: 0 20px !important; border: 1.5px solid var(--alem-verde, #067378) !important; border-radius: 999px; background: transparent !important; background-image: none !important; color: var(--alem-verde-hover, #05565a) !important; font: 700 11.5px/1 var(--alem-f-interface, "Source Sans 3", sans-serif) !important; letter-spacing: .14em !important; text-transform: uppercase; white-space: nowrap; transition: box-shadow .24s var(--alem-curva, cubic-bezier(.2,0,0,1)); }
  html body:not(.home):not(.alem-support-page) .alem-site-header .alem-topline-actions a.alem-header-apoie em { font-style: italic; letter-spacing: .04em; text-transform: none; font-size: 14px; }
  html body:not(.home):not(.alem-support-page) .alem-site-header .alem-topline-actions a.alem-header-apoie:is(:hover, :focus-visible) { box-shadow: 0 0 0 1px var(--alem-ciano, #36aeb0), 0 0 16px color-mix(in srgb, var(--alem-ciano, #36aeb0) 35%, transparent) !important; }
}

/* Lupa: o mesmo efeito de hover em todas as páginas (halo suave + anel + inclinação). */
html body .alem-site-header .alem-topline-actions .alem-header-search:is(:hover, :focus-visible) { background: color-mix(in srgb, var(--alem-tinta, #111213) 7%, transparent) !important; box-shadow: 0 0 0 3px color-mix(in srgb, var(--alem-verde, #067378) 14%, transparent) !important; outline-color: var(--alem-ring, var(--alem-verde, #067378)); }

/* ===== Rodapé reorganizado (8ª entrega): marca e boletim no topo; quatro colunas por assunto; base com o legal. ===== */
html body .alem-footer .alem-footer-topo { display: grid; gap: 24px; padding-bottom: 28px; margin-bottom: 34px; border-bottom: 1px solid var(--alem-linha-forte, #c9c0b4); }
@media (min-width: 820px) { html body .alem-footer .alem-footer-topo { grid-template-columns: minmax(0, 1fr) minmax(300px, 440px); align-items: end; gap: 56px; } }
html body .alem-footer .alem-footer-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 32px 40px; }
@media (max-width: 820px) { html body .alem-footer .alem-footer-grid { grid-template-columns: 1fr 1fr; } html body .alem-footer .alem-footer-grid > div:first-child { grid-column: auto; } }
@media (max-width: 460px) { html body .alem-footer .alem-footer-grid { grid-template-columns: 1fr; } }
html body .alem-footer .alem-footer-boletim { display: grid; gap: 8px; }
html body .alem-footer .alem-footer-boletim h3 { margin: 0; }
html body .alem-footer .alem-footer-boletim p { margin: 0; font: 400 15px/1.45 var(--alem-f-interface, "Source Sans 3", sans-serif); color: var(--alem-texto-suave, #3b3935) !important; }
html body .alem-footer .alem-footer-boletim .alem-footer-boletim-acao { margin-top: 6px; }
html body .alem-footer .alem-footer-boletim-acao a { display: inline-flex; align-items: center; height: 42px; padding: 0 20px; border-radius: 999px; background: var(--alem-botao-fundo, #0c0d0e); color: var(--alem-botao-texto, #f6f3ee) !important; font: 700 11px/1 var(--alem-f-interface, "Source Sans 3", sans-serif); letter-spacing: .14em; text-transform: uppercase; text-decoration: none; transition: box-shadow .24s var(--alem-curva, cubic-bezier(.2,0,0,1)); }
html body .alem-footer .alem-footer-boletim-acao a:hover { box-shadow: var(--alem-brilho-hover, 0 0 0 1px #36aeb0, 0 0 22px rgba(54,174,176,.45)); color: var(--alem-botao-texto, #f6f3ee) !important; }
html body .alem-footer .alem-footer-grid > :first-child a { position: relative; text-decoration: none !important; }
html body .alem-footer .alem-footer-grid > :first-child a::after { content: ""; position: absolute; right: 0; bottom: 2px; left: 0; height: 1px; background: currentColor; transform: scaleX(0); transform-origin: left center; transition: transform .24s ease; pointer-events: none; }
html body .alem-footer .alem-footer-grid > :first-child a:is(:hover, :focus-visible)::after { transform: scaleX(1); }
html body .alem-footer .alem-footer-bottom { justify-content: flex-start; align-items: center; gap: 10px 28px; }
@media (min-width: 781px) { html body .alem-footer .alem-footer-bottom { padding-right: 300px; } }
html body .alem-footer .alem-footer-legal { display: flex; flex-wrap: wrap; gap: 4px 20px; margin: 0; }
html body .alem-footer .alem-footer-legal a { font: 500 10.5px/1.4 var(--alem-f-mono, "IBM Plex Mono", monospace) !important; letter-spacing: .14em; text-transform: uppercase; color: var(--alem-texto2, #5b5751) !important; }
