/* Rivesta Insights. Assenta no CSS da descoberta pública (imoveis-publico.css):
   as mesmas variáveis --pd-*, os mesmos botões, campos, cabeçalho e rodapé.
   Aqui só o que é editorial: hero, cartões de artigo, prosa, caixas de dados.
   As fontes vêm de /insights/_a/ para não dependerem da flag da pesquisa. */
@font-face {
  font-family: Inter; font-style: normal; font-display: swap; font-weight: 100 900;
  src: url(/insights/_a/inter-latin-ext.woff2) format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: Inter; font-style: normal; font-display: swap; font-weight: 100 900;
  src: url(/insights/_a/inter-latin.woff2) format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

.rr { background: var(--pd-fundo-2); }
.rr :focus-visible { outline: 3px solid var(--pd-teal); outline-offset: 2px; }

/* ── Hero ─────────────────────────────────────────────────────────── */
.rr-hero__dentro { max-width: 1100px; margin: 0 auto; padding: 48px var(--pd-margem) 44px; }
.rr-sobretitulo { margin: 0 0 10px; font-size: 13px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: #7fe0dc; }
.rr-mercado { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-top: 24px; }
.rr-mercado label { font-weight: 600; color: rgba(255, 255, 255, .9); }
.rr-mercado select {
  height: 44px; min-width: 220px; padding: 0 12px; border-radius: var(--pd-raio-p);
  border: 1px solid rgba(255, 255, 255, .35); background: #fff; color: var(--pd-tinta); font: inherit; font-weight: 600;
}
.rr-hero__nota { margin: 10px 0 0; color: rgba(255, 255, 255, .8); font-size: 14px; }
.rr-hero__video { margin: 18px 0 0; }
.rr-ligacao-clara { color: #fff !important; text-decoration: underline; text-underline-offset: 3px; font-weight: 600; }
.rr-dialogo { border: 0; border-radius: var(--pd-raio); padding: 0; max-width: min(960px, 94vw); background: #000; }
.rr-dialogo::backdrop { background: rgba(10, 30, 61, .7); }
.rr-dialogo video { display: block; width: 100%; max-height: 80vh; }
.rr-dialogo form { position: absolute; right: 8px; top: 8px; z-index: 1; }
.rr-dialogo .pd-pop__fechar { background: #fff; border-radius: 999px; width: 36px; height: 36px; border: 0; font-size: 22px; cursor: pointer; }

/* ── Página ───────────────────────────────────────────────────────── */
.rr-pagina { max-width: 1100px; margin: 0 auto; padding: 28px var(--pd-margem) 56px; display: grid; gap: 28px; }
.rr-bloco { background: #fff; border: 1px solid var(--pd-linha); border-radius: var(--pd-raio); padding: 24px; }
.rr-bloco h2 { margin: 0 0 12px; font-size: 22px; letter-spacing: -.01em; }
.rr-seccao__cabeca { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; }
.rr-seccao__titulo { font-size: 22px; margin: 0 0 16px; }
.rr-ver-todos { font-weight: 600; color: var(--pd-acento); white-space: nowrap; }
.rr-grelha { display: grid; gap: 16px; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); }
.rr-vazio { text-align: center; padding: 40px 24px; }
.rr-vazio p { color: var(--pd-tinta-2); max-width: 560px; margin: 0 auto; }
.rr-vazio__linha { color: var(--pd-tinta-2); }

/* ── Cartões ──────────────────────────────────────────────────────── */
.rr-cartao { display: flex; flex-direction: column; border: 1px solid var(--pd-linha); border-radius: var(--pd-raio); overflow: hidden; background: #fff; transition: box-shadow .15s, border-color .15s; }
.rr-cartao:hover { box-shadow: var(--pd-sombra); border-color: var(--pd-linha-2); }
.rr-cartao__foto { display: block; aspect-ratio: 16 / 9; background: var(--pd-fundo-3); overflow: hidden; }
.rr-cartao__foto img { width: 100%; height: 100%; object-fit: cover; display: block; }
.rr-cartao__corpo { padding: 16px; display: grid; gap: 8px; }
.rr-cartao__meta { display: flex; flex-wrap: wrap; gap: 6px; margin: 0; }
.rr-cartao__titulo { margin: 0; font-size: 18px; line-height: 1.3; letter-spacing: -.01em; }
.rr-cartao__titulo a { color: var(--pd-tinta); text-decoration: none; }
.rr-cartao__titulo a:hover { text-decoration: underline; text-underline-offset: 3px; }
.rr-cartao__resumo { margin: 0; color: var(--pd-tinta-2); font-size: 15px; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.rr-cartao__rodape { margin: 4px 0 0; display: flex; flex-wrap: wrap; gap: 10px; font-size: 13px; color: var(--pd-tinta-3); }
.rr-cartao--grande { border: 0; }
@media (min-width: 820px) {
  .rr-cartao--grande:has(.rr-cartao__foto) { display: grid; grid-template-columns: 1.2fr 1fr; }
  .rr-cartao--grande .rr-cartao__foto { aspect-ratio: auto; min-height: 260px; }
  .rr-cartao--grande:has(.rr-cartao__foto) .rr-cartao__corpo { padding: 8px 8px 8px 28px; align-content: center; }
  .rr-cartao--grande .rr-cartao__corpo { max-width: 760px; }
  .rr-cartao--grande .rr-cartao__titulo { font-size: 28px; }
}
.rr-selo { display: inline-flex; align-items: center; height: 24px; padding: 0 10px; border-radius: 999px; font-size: 12px; font-weight: 700; background: var(--pd-fundo-3); color: var(--pd-tinta-2); text-decoration: none; }
.rr-selo--tendencias { background: #e6f4f2; color: #08524e; }
.rr-selo--estudos { background: #e8eefb; color: #1e3a8a; }
.rr-selo--oportunidades { background: #fdf3e1; color: #7a4a00; }
.rr-selo--casos { background: #fff3e0; color: #8a4b00; }
.rr-selo--guias { background: #eef7e8; color: #2f5f12; }
.rr-selo--opiniao { background: #f3e8fb; color: #5b2a86; }
.rr-selo--patrocinado { background: #fdecec; color: #8a1c1c; }
.rr-selo--mercado { background: rgba(255, 255, 255, .14); color: #fff; }
.rr-cartao .rr-selo--mercado { background: var(--pd-fundo-3); color: var(--pd-tinta-2); }

/* ── Filtros e paginação ──────────────────────────────────────────── */
.rr-filtros { display: grid; gap: 12px; grid-template-columns: 1fr; align-items: end; margin-bottom: 12px; }
@media (min-width: 760px) { .rr-filtros { grid-template-columns: 2fr 1fr 1fr auto auto; } }
.rr-filtros select, .rr-form select, .rr-news__form select, .rr-form textarea {
  width: 100%; min-height: 44px; padding: 10px 12px; border: 1px solid var(--pd-linha-2); border-radius: var(--pd-raio-p); font: inherit; background: #fff; color: var(--pd-tinta);
}
.rr-form textarea { resize: vertical; }
.rr-contagem { color: var(--pd-tinta-2); font-size: 14px; margin: 0 0 12px; }
.rr-paginacao { display: flex; align-items: center; justify-content: center; gap: 16px; margin-top: 20px; color: var(--pd-tinta-2); }

/* ── Avisos, newsletter, apelos ──────────────────────────────────── */
.rr-aviso { margin: 0; padding: 12px 16px; border-radius: var(--pd-raio-p); background: var(--pd-fundo-3); color: var(--pd-tinta); }
.rr-aviso--ok { background: #e6f4f2; color: #08524e; }
.rr-aviso--erro { background: #fdecec; color: #8a1c1c; }
.rr-news { display: grid; gap: 20px; }
@media (min-width: 820px) { .rr-news { grid-template-columns: 1fr 1fr; align-items: start; } }
.rr-news__texto p { color: var(--pd-tinta-2); margin: 0; }
.rr-news__form { display: grid; gap: 12px; }
.rr-caixa { display: flex; gap: 10px; align-items: flex-start; font-size: 14px; color: var(--pd-tinta); }
.rr-caixa input { width: 18px; height: 18px; margin-top: 2px; flex-shrink: 0; accent-color: var(--pd-acento); }
.rr-nota { font-size: 13px; color: var(--pd-tinta-3); margin: 0; }
.rr-isco { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.rr-apelos { display: grid; gap: 24px; background: transparent; border: 0; padding: 0; }
@media (min-width: 820px) { .rr-apelos { grid-template-columns: 1fr 1fr; } }
.rr-apelo { background: #fff; border: 1px solid var(--pd-linha); border-radius: var(--pd-raio); padding: 24px; display: grid; gap: 10px; align-content: start; }
.rr-apelo p { margin: 0; color: var(--pd-tinta-2); }
.rr-apelo__accoes { display: flex; flex-wrap: wrap; gap: 10px; }
.rr-apelo .pd-botao { justify-self: start; }

/* ── Artigo ───────────────────────────────────────────────────────── */
.rr-artigo__largura { max-width: 1100px; margin: 0 auto; }
.rr-artigo__topo h1 { max-width: 860px; }
.rr-trilho { font-size: 14px; margin-bottom: 14px; color: rgba(255, 255, 255, .8); }
.rr-trilho a { color: #fff; }
.rr-artigo__assinatura { font-size: 15px !important; }
.rr-artigo__assinatura a { color: #fff; }
.rr-artigo__grelha { display: grid; gap: 28px; padding: 28px var(--pd-margem) 0; }
/* Computador: texto até 740px e uma coluna lateral estreita só com o que
   serve a leitura (destaques, índice, traduções); a grelha fica centrada e
   sem a faixa vazia à direita. Sem nada para o lado, uma coluna só. */
@media (min-width: 980px) {
  .rr-artigo__grelha { grid-template-columns: minmax(0, 740px) minmax(240px, 300px); justify-content: center; column-gap: 40px; }
  .rr-artigo__grelha--so { grid-template-columns: minmax(0, 760px); }
  .rr-artigo__lado { display: grid; gap: 16px; align-content: start; }
  .rr-artigo__lado-fixo { position: sticky; top: calc(var(--pd-cab-alt) + 16px); display: grid; gap: 12px; }
  .rr-destaques--corpo { display: none; }
}
.rr-artigo__principal { display: grid; gap: 20px; min-width: 0; }
/* Os filhos também são itens de grelha: sem isto, o bloco do texto crescia até
   à largura de uma tabela larga e passava o ecrã no telemóvel (a tabela
   desliza dentro do seu .rr-tabela). */
.rr-artigo__principal > * { min-width: 0; }
.rr-artigo__imagem { margin: 0; }
.rr-artigo__imagem img { width: 100%; border-radius: var(--pd-raio); display: block; }
.rr-prosa { background: #fff; border: 1px solid var(--pd-linha); border-radius: var(--pd-raio); padding: clamp(20px, 4vw, 36px); font-size: 17px; line-height: 1.7; }
.rr-prosa h2 { font-size: 24px; margin: 1.6em 0 .5em; letter-spacing: -.01em; scroll-margin-top: calc(var(--pd-cab-alt) + 16px); }
.rr-prosa h2:first-child { margin-top: 0; }
.rr-prosa h3 { font-size: 19px; margin: 1.3em 0 .4em; }
.rr-prosa p { margin: 0 0 1em; }
.rr-prosa a { color: var(--pd-acento); }
.rr-prosa blockquote { margin: 1em 0; padding: 4px 0 4px 18px; border-left: 3px solid var(--pd-teal); color: var(--pd-tinta-2); }
.rr-tabela { overflow-x: auto; margin: 1em 0; }
.rr-tabela table { width: 100%; border-collapse: collapse; font-size: 15px; }
.rr-tabela th, .rr-tabela td { padding: 8px 10px; border-bottom: 1px solid var(--pd-linha); text-align: left; vertical-align: top; }
.rr-tabela th { background: var(--pd-fundo-2); font-weight: 700; }
.rr-num { white-space: nowrap; font-variant-numeric: tabular-nums; }
.rr-caixa-dados { background: #fff; border: 1px solid var(--pd-linha); border-left: 4px solid var(--pd-teal); border-radius: var(--pd-raio); padding: 20px 24px; }
.rr-caixa-dados h2 { margin: 0 0 10px; font-size: 19px; }
.rr-caixa-dados p { margin: 0 0 8px; color: var(--pd-tinta-2); }
.rr-caixa-dados summary { cursor: pointer; font-weight: 600; margin-top: 8px; }
.rr-fontes { margin: 0; padding-left: 20px; display: grid; gap: 6px; }
.rr-autor { background: #fff; border: 1px solid var(--pd-linha); border-radius: var(--pd-raio); padding: 20px 24px; }
.rr-autor__nome { font-weight: 700; margin: 0 0 6px; }
.rr-indice { background: #fff; border: 1px solid var(--pd-linha); border-radius: var(--pd-raio); padding: 16px 20px; margin-bottom: 16px; }
.rr-indice__titulo { margin: 0 0 8px; font-weight: 700; }
.rr-indice ol { margin: 0; padding-left: 18px; display: grid; gap: 6px; font-size: 14px; }
.rr-indice a { color: var(--pd-tinta-2); }

/* ── Escreva para o Rivesta ───────────────────────────────────────── */
.rr-escreva__grelha { display: grid; gap: 24px; }
@media (min-width: 980px) { .rr-escreva__grelha { grid-template-columns: 1fr 1.3fr; align-items: start; } }
.rr-lista { margin: 0 0 20px; padding-left: 20px; display: grid; gap: 8px; color: var(--pd-tinta-2); }
.rr-lista--condicoes li::marker { color: var(--pd-acento); }
.rr-form { display: grid; gap: 14px; }
.rr-form__duas { display: grid; gap: 14px; }
@media (min-width: 640px) { .rr-form__duas { grid-template-columns: 1fr 1fr; } }
.rr-form small { font-weight: 400; color: var(--pd-tinta-3); }
.rr-erro { color: #b42318; font-weight: 600; font-size: 13px; }
[aria-invalid="true"] { border-color: #b42318 !important; }
.rr-mensagem { text-align: center; }
.rr-mensagem h1 { margin: 0 0 12px; font-size: 28px; }

/* Ligação para a Rivesta Insights no cabeçalho da pesquisa */
.pd-cab__nav a[data-rr-nav] { position: relative; }

/* ══ Dentro de rivesta.pt ════════════════════════════════════════════
   A Rivesta Insights vive no site institucional: o cabeçalho, o rodapé e as cores
   são os do site (tailwind.config.mjs e globals.css do auction_radar-site),
   não os da pesquisa de imóveis. Tokens: fundo #FAFAFA, tinta #1A1F2E,
   marinho #0A1E3D, linha #E5E7EB, cartões com raio de 14px. */
@font-face {
  font-family: "IBM Plex Mono"; font-style: normal; font-display: swap; font-weight: 500;
  src: url(/insights/_a/plex-mono-latin-500.woff2) format("woff2");
}
.rs {
  --rs-fundo: #FAFAFA; --rs-fundo-2: #F6F7F9; --rs-tinta: #1A1F2E; --rs-tinta-2: #475569; --rs-tinta-3: #5D6B80;
  --rs-linha: #E5E7EB; --rs-marinho: #0A1E3D; --rs-marinho-2: #0F2750; --rs-tinta-clara: #EAF0F7;
  --pd-acento: #0A1E3D; --pd-acento-forte: #0F2750; --pd-acento-suave: #EAF0F7; --pd-raio: 14px;
  background: var(--rs-fundo); color: var(--rs-tinta);
  font-family: "Inter Variable", Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
}
.rs-dentro { max-width: 1280px; margin: 0 auto; width: 100%; padding: 0 20px; }
@media (min-width: 640px) { .rs-dentro { padding: 0 24px; } }
@media (min-width: 1024px) { .rs-dentro { padding: 0 32px; } }

/* Cabeçalho (SiteNav.astro) */
.rs-cab { position: sticky; top: 0; z-index: 40; border-bottom: 1px solid rgba(229, 231, 235, .8);
  background: rgba(250, 250, 250, .85); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); }
.rs-cab__barra { height: 64px; display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.rs-marca { display: flex; align-items: center; gap: 12px; text-decoration: none; }
.rs-marca img { width: 32px; height: 32px; border-radius: 22%; object-fit: cover; flex-shrink: 0; }
.rs-marca__nome { white-space: nowrap; font-size: 19px; font-weight: 700; letter-spacing: -.02em; line-height: 1; color: #0A1E3D; }
.rs-marca__nome .rs-i { color: #00727A; }
@media (min-width: 360px) { .rs-marca__nome { font-size: 21px; } }
@media (min-width: 768px) { .rs-marca__nome { font-size: 25px; } }
.rs-cab__links { display: none; list-style: none; margin: 0; padding: 0; gap: 32px; font-size: 14px; }
@media (min-width: 768px) { .rs-cab__links { display: flex; align-items: center; } }
.rs-cab__links a { color: var(--rs-tinta-2); text-decoration: none; transition: color .15s; }
.rs-cab__links a:hover, .rs-cab__links a[aria-current="page"] { color: var(--rs-tinta); }
.rs-cab__links a[aria-current="page"] { font-weight: 600; text-decoration: underline; text-decoration-color: #00A3A3;
  text-decoration-thickness: 2px; text-underline-offset: 8px; }
.rs-cab__accoes { display: flex; align-items: center; gap: 12px; }
.rs-linguas { display: none; align-items: center; gap: 4px; border: 1px solid var(--rs-linha); border-radius: 999px; padding: 2px;
  background: #fff; font-size: 12px; font-weight: 600; }
@media (min-width: 640px) { .rs-linguas { display: inline-flex; } }
.rs-linguas a, .rs-linguas span { display: inline-flex; align-items: center; min-height: 32px; padding: 4px 10px; border-radius: 999px;
  color: var(--rs-tinta-2); text-decoration: none; }
.rs-linguas a:hover { background: #F1F3F5; color: var(--rs-tinta); }
.rs-linguas span[aria-current] { background: #0A1E3D; color: #fff; }
.rs-cta { display: inline-flex; align-items: center; gap: 8px; padding: .6rem 1.05rem; border-radius: 8px; background: #0A1E3D;
  color: #F8FAFC !important; font-size: .83rem; font-weight: 600; text-decoration: none; white-space: nowrap;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08), 0 1px 2px rgba(10, 30, 61, .2); }
.rs-cta:hover { background: #0F2750; }
.rs-estreito { display: inline; }
.rs-largo { display: none; }
@media (min-width: 640px) { .rs-estreito { display: none; } .rs-largo { display: inline; } }

/* Rodapé (SiteFooter.astro) */
.rs-rodape { margin-top: auto; border-top: 1px solid var(--rs-linha); background: var(--rs-fundo-2); }
.rs-rodape .rs-dentro { padding-top: 56px; padding-bottom: 56px; }
.rs-rodape__colunas { display: grid; gap: 40px; }
@media (min-width: 640px) { .rs-rodape__colunas { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1024px) { .rs-rodape__colunas { grid-template-columns: repeat(3, 1fr); } }
.rs-rodape h3 { margin: 0 0 12px; font-size: 12px; font-weight: 600; text-transform: uppercase; letter-spacing: .14em; color: var(--rs-tinta-3); }
.rs-rodape ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; font-size: 14px; }
.rs-rodape a { color: var(--rs-tinta-2); text-decoration: none; }
.rs-rodape a:hover, .rs-rodape a[aria-current] { color: var(--rs-tinta); }
.rs-rodape__fim { margin-top: 48px; padding-top: 32px; border-top: 1px solid var(--rs-linha); font-size: 12px; color: var(--rs-tinta-3);
  display: grid; gap: 20px; line-height: 1.6; }
.rs-rodape__fim p { margin: 0; }
.rs-rodape__direitos { display: flex; align-items: center; gap: 10px; font-weight: 500; }
.rs-rodape__direitos img { width: 22px; height: 22px; border-radius: 22%; }
.rs-rodape__direitos span { color: var(--rs-tinta); }

/* O corpo da Rivesta Insights no visual claro do site */
.rs .pd-hero, .rs .pd-pagina-topo { color: var(--rs-tinta); background: var(--rs-fundo); border-bottom: 1px solid var(--rs-linha); }
.rs .pd-hero__fundo { display: none; }
.rs .pd-hero__titulo, .rs .pd-pagina-topo h1 { color: #0A1E3D; font-weight: 700; letter-spacing: -.025em; }
.rs .pd-hero__sub, .rs .pd-pagina-topo p { color: var(--rs-tinta-2); }
.rs .rr-sobretitulo { font-family: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace; font-weight: 500;
  font-size: 14px; letter-spacing: .13em; color: rgba(10, 30, 61, .82); }
.rs .rr-mercado label { color: var(--rs-tinta); }
.rs .rr-mercado select { border-color: #D1D5DB; }
.rs .rr-hero__nota { color: var(--rs-tinta-2); }
.rs .rr-ligacao-clara, .rs .rr-trilho a, .rs .rr-artigo__assinatura a { color: #0A1E3D !important; }
.rs .rr-trilho { color: var(--rs-tinta-3); }
.rs .rr-selo--mercado { background: #EAF0F7; color: #0A1E3D; }
.rs .pd-botao--cheio { background: #0A1E3D; }
.rs .pd-botao--cheio:hover { background: #0F2750; }
.rs .rr-bloco, .rs .rr-apelo, .rs .rr-prosa, .rs .rr-caixa-dados, .rs .rr-autor, .rs .rr-indice {
  border-radius: 14px; box-shadow: 0 1px 2px rgba(15, 23, 42, .04), 0 1px 3px rgba(15, 23, 42, .06); }
.rs .rr-caixa-dados { border-left-color: #00A3A3; }
.rs .rr-ver-todos, .rs .rr-prosa a { color: #0A1E3D; }
.rs .rr-artigo__lado-fixo { top: 80px; }
/* O cabeçalho do artigo alinha pela grelha do texto (740 + 40 + 300, mais as margens de 32). */
@media (min-width: 980px) { .rs .rr-artigo__topo .pd-pagina-topo__dentro { max-width: 1144px; } }
.rs .rr-prosa h2 { scroll-margin-top: 80px; }
/* A mesma largura e margens do container do site (container-prose). */
.rs .rr-pagina, .rs .rr-hero__dentro, .rs .pd-pagina-topo__dentro, .rs .rr-artigo__largura { max-width: 1280px; }
.rs .rr-hero__dentro, .rs .pd-pagina-topo__dentro { padding-left: 20px; padding-right: 20px; }
@media (min-width: 640px) { .rs .rr-pagina, .rs .rr-hero__dentro, .rs .pd-pagina-topo__dentro, .rs .rr-artigo__grelha { padding-left: 24px; padding-right: 24px; } }
@media (min-width: 1024px) { .rs .rr-pagina, .rs .rr-hero__dentro, .rs .pd-pagina-topo__dentro, .rs .rr-artigo__grelha { padding-left: 32px; padding-right: 32px; } }
/* No telemóvel o índice vem antes do texto (no fim já não servia). */
@media (max-width: 979px) {
  .rr-artigo__lado { order: -1; }
  .rr-destaques--lado { display: none; }
  .rr-artigo__lado .pd-ligacao { display: none; }
  .rr-indice { margin-bottom: 0; }
}

/* Crédito da fotografia de capa, discreto, por baixo da imagem. */
.rr-artigo__credito { margin-top: 6px; font-size: 12px; color: var(--pd-texto-2, #5F6E85); }
.rr-artigo__credito a { color: inherit; }

/* Faixa da pré-visualização local de rascunhos (nunca existe em produção). */
.rr-aviso--rascunho { background: #fff4e5; color: #7a4a00; font-weight: 600; }

/* Destaques numéricos do artigo (dados.destaques, valores dos indicadores). */
.rr-destaques { margin: 0; }
.rr-destaques__titulo { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.rr-destaques ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); }
.rr-destaques li { background: #fff; border: 1px solid var(--pd-linha, #E5E7EB); border-top: 3px solid #00A3A3; border-radius: 12px;
  padding: 14px 16px; display: grid; gap: 4px; align-content: start; }
.rr-destaques__valor { font-size: 26px; font-weight: 700; letter-spacing: -.02em; color: #0A1E3D; font-variant-numeric: tabular-nums; line-height: 1.1; }
.rr-destaques__unidade { font-size: 13px; font-weight: 600; color: #00727A; }
.rr-destaques__texto { font-size: 14px; line-height: 1.4; color: var(--pd-tinta-2, #475569); }
/* Na coluna lateral: um destaque por linha, com título visível. */
.rr-destaques__titulo--visivel { position: static; width: auto; height: auto; overflow: visible; clip: auto; white-space: normal;
  margin: 0 0 8px; font-size: 13px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: #00727A; }
.rr-destaques--lado ul { grid-template-columns: 1fr; gap: 10px; }
.rr-destaques--lado li { padding: 12px 14px; }
.rr-destaques--lado .rr-destaques__valor { font-size: 22px; }
.rr-artigo__lado .rr-indice { margin-bottom: 0; }

/* Gráficos (SVG feito no servidor a partir dos indicadores: shared/editorial/graficos.py). */
.rr-grafico { margin: 1.4em 0; padding: 16px 16px 12px; border: 1px solid var(--pd-linha, #E5E7EB); border-radius: 12px; background: #fff; }
.rr-grafico__titulo { margin: 0 0 6px !important; font-size: 16px; font-weight: 700; line-height: 1.35; color: #0A1E3D; }
.rr-grafico__legenda { list-style: none; margin: 0 0 4px; padding: 0; display: flex; flex-wrap: wrap; gap: 6px 16px; font-size: 14px; color: var(--pd-tinta-2, #475569); }
.rr-grafico__legenda li { display: inline-flex; align-items: center; gap: 6px; }
.rr-grafico__svg { display: block; width: 100%; height: auto; overflow: visible; font-family: inherit; }
.rr-grafico__svg--estreito { display: none; }
.rr-grafico__legenda-fonte { margin-top: 6px; font-size: 13px; line-height: 1.45; color: var(--pd-tinta-3, #5D6B80); }
.rr-grafico__dados { margin-top: 6px; font-size: 14px; }
.rr-grafico__dados summary { cursor: pointer; color: #0A1E3D; font-weight: 600; }
.rr-grafico__dados .rr-tabela { margin: .6em 0 0; }
.rr-grafico__dados th[scope="row"] { font-weight: 600; background: transparent; }
/* No telemóvel, a versão estreita do desenho (menos rótulos, letra maior em proporção). */
@media (max-width: 560px) {
  .rr-grafico { padding: 12px 10px 10px; }
  .rr-grafico__svg--largo { display: none; }
  .rr-grafico__svg--estreito { display: block; }
  .rr-destaques__valor { font-size: 22px; }
}
