/* ScienceMed — as páginas públicas desenhadas no servidor (api/pagina.mjs): estudo, especialidades e temas.
   Os mesmos tokens de web/index.html (:root) e a mesma capa (.cc) — mudou lá, muda aqui. Só Poppins, de 300 a 500;
   tracking negativo no grande e positivo no miúdo; alvo de toque de 44px; movimento reduzido respeitado. */
:root{
  color-scheme: light;
  --raio-capa:1rem; --raio-card:.75rem; --raio-mini:.625rem;   /* os mesmos de web/index.html */
  --fonte:"Poppins",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --paper:#FFFFFF; --ink:#000F26; --ink-2:#4D5767; --quiet:#5C6677; --hair:#E2E5E8; --hair-2:#EEF0F2; --sunk:#F4F5F7;
  --navy:#000F26; --grayblue:#8C9EB4; --accent:#4B5F7E; --alert:#8C3A2E;
  --gutter:clamp(1rem, 18vw - 8.75rem, 18rem);   /* margem lateral, igual dos dois lados, a mesma curva do app: 16 px no celular, 206 em 1.920 */
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--fonte);font-weight:400;line-height:1.6;-webkit-font-smoothing:antialiased;
  overflow-wrap:break-word}   /* sigla emendada por barra ("AHA/ACC/ACS/…"), DOI ou URL quebra em vez de vazar a tela */
a{color:inherit}
h1,h2,h3,p,ul,ol,dl,dd,figure{margin:0}
ul,ol{padding:0;list-style:none}
.pg-col{width:min(46rem,calc(100% - 2 * var(--gutter)));margin:0 auto}
/* a página ocupa a tela toda: cabeçalho e rodapé vão de margem a margem, e o miolo das páginas de lista
   (especialidades, temas, profissionais) também, em grade; o das páginas de leitura (sobre, termos, perfil)
   guarda a medida do texto, e o do estudo abre em duas colunas na tela larga (mais abaixo) */
.pg-topo > .pg-col,.pg-rodape > .pg-col,main.pg-col:has(.pg-grade,.pp-lista,.pg-listas){width:calc(100% - 2 * var(--gutter))}

/* topo */
.pg-topo{border-bottom:1px solid var(--hair);background:rgba(255,255,255,.94);position:sticky;top:0;z-index:5;
  -webkit-backdrop-filter:blur(16px) saturate(160%);backdrop-filter:blur(16px) saturate(160%)}
.pg-topo-l{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:3.5rem}
.pg-marca{font-size:1.25rem;font-weight:300;letter-spacing:-.008em;text-decoration:none;line-height:1}
.pg-marca sup{font-size:.4em;vertical-align:top;margin-left:.3em;font-weight:400;position:relative;top:.12em}
.pg-nav{display:flex;align-items:center;gap:.25rem}
.pg-nav a{position:relative;display:inline-flex;align-items:center;min-height:2.75rem;padding:0 .625rem;font-size:.8125rem;font-weight:400;
  letter-spacing:.005em;color:var(--ink-2);text-decoration:none;border-radius:999px;transition:background-color .15s,color .15s}
.pg-nav a:hover{color:var(--ink);background:var(--sunk)}
.pg-nav a:active{opacity:.6}
.pg-nav .pg-nav-app{margin-left:.25rem;padding:0 1rem;background:var(--ink);color:#fff;font-weight:500}
.pg-nav .pg-nav-app:hover{background:#1A2638;color:#fff}

/* trilha */
.pg-migalhas{margin:1.5rem 0 1rem}
.pg-migalhas ol{display:flex;flex-wrap:wrap;gap:.25rem .5rem;font-size:.75rem;letter-spacing:.01em;color:var(--quiet)}
.pg-migalhas li + li::before{content:'›';margin-right:.5rem;color:var(--grayblue)}
.pg-migalhas a{text-decoration:none;color:var(--ink-2)}
.pg-migalhas a:hover{text-decoration:underline;text-underline-offset:.15em}

/* a capa: a mesma do site (web/index.html) — a imagem limpa, de cantos arredondados, com a marca no alto e um véu leve só ali;
   a manchete e a editoria embaixo, em tinta sobre o papel */
.pg-capa{margin:0}
.cc{--ar:3/2;position:relative;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto;align-content:start;color:var(--ink)}
.cc > img{grid-area:1/1;display:block;width:100%;height:auto;aspect-ratio:var(--ar);object-fit:cover;border-radius:var(--raio-capa);background:var(--sunk,#F2F3F4)}
.cc::before{content:'';grid-area:1/1;z-index:1;align-self:start;height:min(45%,6.5rem);border-radius:var(--raio-capa) var(--raio-capa) 0 0;
  pointer-events:none;background:linear-gradient(180deg,rgba(0,0,0,.4),rgba(0,0,0,0))}
.cc-marca{grid-area:1/1;z-index:2;align-self:start;display:flex;align-items:flex-start;padding:1.25rem 1.5rem 0;color:#fff;font-size:1.0625rem;font-weight:300;
  line-height:1;letter-spacing:-.005em;text-shadow:0 1px 2px rgba(0,0,0,.35);pointer-events:none}
.cc-marca sup{font-size:.4em;margin:.14em 0 0 .3em;font-weight:400;line-height:1}
.cc-pe{grid-area:2/1;padding:1.125rem 0 0}
.cc-t{margin:0;color:var(--ink);font-family:"Newsreader",Georgia,"Times New Roman",serif;font-size:clamp(1.75rem,3.6vw,2.5rem);line-height:1.08;font-weight:600;
  letter-spacing:-.014em;text-wrap:balance}   /* a manchete: Newsreader Semibold, a mesma do app */
.cc-cats{display:flex;flex-wrap:wrap;gap:.375rem;margin-top:.875rem}
.cc-pill{display:inline-flex;align-items:center;height:1.75rem;padding:0 .875rem;border-radius:999px;font-size:.75rem;font-weight:400;line-height:1;
  letter-spacing:.01em;color:var(--ink-2);background:var(--sunk,#F2F3F4);box-shadow:inset 0 0 0 1px var(--hair-2,#E4E6E9)}
.cc-pill.pre{background:var(--ink);color:#fff;box-shadow:none;font-weight:500}
.pg-gravura:not([src]){opacity:0}
.pg-cred{margin-top:.5rem;font-size:.6875rem;line-height:1.5;color:var(--quiet)}
.pg-cred a{color:inherit;text-decoration:underline;text-decoration-color:var(--hair);text-underline-offset:.15em}

/* a matéria */
.pg-meta{display:flex;flex-wrap:wrap;gap:.25rem 1rem;margin-top:1.25rem;font-size:.75rem;letter-spacing:.02em;color:var(--quiet)}
.pg-aviso-forte,.pg-aviso-leve{margin-top:1rem;padding:.75rem 1rem;border-left:3px solid var(--alert);background:rgba(140,58,46,.05);font-size:.875rem;line-height:1.5;color:var(--alert)}
.pg-aviso-leve{border-color:var(--quiet);background:var(--sunk);color:var(--ink-2)}
.pg-sec{margin-top:2.25rem}
.pg-sec h2{font-size:.75rem;font-weight:500;letter-spacing:.098em;text-transform:uppercase;color:var(--quiet);margin-bottom:.75rem}
.pg-sec h3{margin:1.25rem 0 .375rem;font-size:1rem;font-weight:500;letter-spacing:-.005em}
.pg-sec p{font-size:1.0625rem;line-height:1.7;color:var(--ink)}
.pg-sec p + p{margin-top:.75rem}
.pg-lingua{margin-left:.375rem;font-weight:400;letter-spacing:.04em;text-transform:none;color:var(--quiet)}
.pg-nota{max-width:46rem;margin-top:1rem !important;font-size:.8125rem !important;line-height:1.55 !important;color:var(--quiet) !important}
.pg-sobre dl{display:grid;grid-template-columns:repeat(auto-fill,minmax(12rem,1fr));gap:1px;border-radius:.875rem;overflow:hidden;background:var(--hair-2);box-shadow:0 0 0 1px var(--hair-2)}
.pg-sobre dl > div{padding:.875rem 1rem;background:#fff}
.pg-sobre dt{font-size:.6875rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--quiet)}
.pg-sobre dd{margin-top:.25rem;font-size:.9375rem;font-weight:500;letter-spacing:-.003em}
.pg-titulo-orig{font-size:1rem !important;font-weight:500;line-height:1.45 !important}
.pg-autores{margin-top:.375rem !important;font-size:.8125rem !important;line-height:1.5 !important;color:var(--ink-2) !important}
.pg-links{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}
.pg-links a{position:relative;display:inline-flex;align-items:center;min-height:2.75rem;padding:0 1rem;border-radius:999px;background:var(--sunk);
  font-size:.8125rem;font-weight:500;letter-spacing:.005em;color:var(--ink);text-decoration:none;transition:background-color .15s,transform 100ms ease-out}
.pg-links a:hover{background:var(--hair-2)}
.pg-links a:active{transform:scale(.97)}
.pg-chips{display:flex;flex-wrap:wrap;gap:.375rem}
.pg-chips li{padding:.25rem .75rem;border-radius:999px;background:var(--sunk);font-size:.75rem;letter-spacing:.01em;color:var(--ink-2)}
.pg-chips li.forte{background:#fff;box-shadow:inset 0 0 0 1px rgba(75,95,126,.34);color:var(--ink);font-weight:500}
.pg-pills{display:flex;flex-wrap:wrap;gap:.5rem}
.pg-pills a{display:inline-flex;align-items:center;min-height:2.75rem;padding:0 1.125rem;border-radius:999px;box-shadow:inset 0 0 0 1px rgba(75,95,126,.34);
  font-size:.875rem;font-weight:400;letter-spacing:.003em;text-decoration:none;transition:background-color .15s,transform 100ms ease-out}
.pg-pills a:hover{background:rgba(75,95,126,.06)}
.pg-pills a:active{transform:scale(.97)}
.pg-lista li{padding:.875rem 0;border-top:1px solid var(--hair-2)}
.pg-lista li:last-child{border-bottom:1px solid var(--hair-2)}
.pg-lista a{display:block;font-size:1rem;font-weight:500;line-height:1.4;letter-spacing:-.006em;text-decoration:none;text-wrap:pretty}
.pg-lista a:hover{color:var(--accent)}
.pg-lmeta{display:block;margin-top:.25rem;font-size:.75rem;line-height:1.5;letter-spacing:.01em;color:var(--quiet)}
.pg-pre{display:inline-block;margin-right:.375rem;padding:0 .5rem;border-radius:999px;background:var(--ink);color:#fff;font-size:.6875rem;font-weight:500;line-height:1.375rem}
.pg-app{display:flex;align-items:center;flex-wrap:wrap;gap:1rem 1.5rem;margin:2.75rem 0 0;padding:1.25rem 1.375rem;border-radius:.875rem;background:var(--sunk)}
.pg-app p{flex:1 1 18rem;font-size:.9375rem;line-height:1.55;color:var(--ink-2)}
.pg-app b{font-weight:500;color:var(--ink)}
.pg-bt{display:inline-flex;align-items:center;justify-content:center;min-height:2.75rem;padding:0 1.375rem;border-radius:999px;background:var(--ink);color:#fff;
  font-size:.875rem;font-weight:500;letter-spacing:.005em;text-decoration:none;transition:background-color .15s,transform 100ms ease-out}
.pg-bt:hover{background:#1A2638}
.pg-bt:active{transform:scale(.97)}
.pg-bt-s{background:#fff;color:var(--ink);box-shadow:inset 0 0 0 1px rgba(0,15,38,.2)}
.pg-bt-s:hover{background:var(--sunk)}

/* /planos: o gratuito e o PRO lado a lado (uma coluna no celular) */
.pp-planos{display:grid;gap:1rem}
@media (min-width:760px){.pp-planos{grid-template-columns:1fr 1fr;align-items:stretch}}
.pp-plano{display:flex;flex-direction:column;padding:1.5rem 1.5rem 1.375rem;border-radius:1rem;background:#fff;box-shadow:0 0 0 1px rgba(0,15,38,.12)}
.pp-plano-pro{box-shadow:0 0 0 1.5px var(--ink),0 22px 48px -30px rgba(0,15,38,.5)}
.pp-preco{margin-top:.5rem;font-size:2rem;line-height:1.1;font-weight:500;letter-spacing:-.022em;font-variant-numeric:tabular-nums}
.pp-preco small{font-size:.9375rem;font-weight:400;letter-spacing:0;color:var(--ink-2)}
.pp-nota{margin-top:.375rem;font-size:.875rem;line-height:1.5;color:var(--ink-2)}
.pp-recursos{margin:1.125rem 0 1.375rem;display:grid;gap:.5rem;flex:1}
.pp-recursos li{position:relative;padding-left:1.5rem;font-size:.9375rem;line-height:1.45}
.pp-recursos li::before{content:'';position:absolute;left:.125rem;top:.3125rem;width:.75rem;height:.4375rem;border:solid var(--ink);border-width:0 0 1.75px 1.75px;transform:rotate(-45deg)}
.pp-perguntas dt{margin-top:1.25rem;font-weight:500;font-size:1rem;line-height:1.4}
.pp-perguntas dd{margin-top:.25rem;font-size:.9375rem;line-height:1.6;color:var(--ink-2)}

/* especialidades e temas */
/* as listas de estudos de uma especialidade ou tema: uma embaixo da outra no celular; na tela larga, lado a
   lado em colunas de 21rem ou mais, cada lista inteira numa coluna, com o topo das colunas alinhado */
.pg-listas{margin-top:2.25rem}
.pg-listas > .pg-sec{margin-top:0;padding-bottom:2.25rem;break-inside:avoid}
@media (min-width:900px){ .pg-listas{columns:21rem;column-gap:3rem} }   /* colunas só onde cabem duas */

/* a página do estudo na tela larga: a capa abre na largura toda, e embaixo o texto fica na medida de leitura
   com o estudo original, os descritores e os relacionados na coluna ao lado — como a matéria no ScienceMed.
   Só com a marcação de duas colunas (.pg-art-corpo): página em cache de antes dela fica na coluna de leitura,
   em vez de espalhar os blocos pela grade. */
@media (min-width:1200px){
  main.pg-col:has(> .pg-art > .pg-art-corpo){width:min(74rem,calc(100% - 2 * var(--gutter)))}
  .pg-art:has(> .pg-art-corpo){display:grid;grid-template-columns:minmax(0,44rem) minmax(17rem,24rem);
    column-gap:clamp(3rem,4vw,5rem);justify-content:space-between;align-items:start}
  .pg-art > .pg-capa{grid-column:1/-1}
  .pg-art:has(> .pg-art-corpo) .cc > img{aspect-ratio:auto;height:clamp(22rem,58vh,36rem)}
  .pg-art:has(> .pg-art-corpo) .cc-t{font-size:clamp(2.5rem,2.7vw,3.125rem)}
  .pg-art-lado > .pg-sec:first-child{margin-top:1.25rem}
}

.pg-cab{margin-top:.5rem}
.pg-kicker{font-size:.75rem;font-weight:500;letter-spacing:.098em;text-transform:uppercase;color:var(--accent)}
.pg-cab h1{margin-top:.5rem;font-size:clamp(2rem,5vw,2.875rem);line-height:1.08;font-weight:500;letter-spacing:-.028em}
.pg-lead{margin-top:.875rem;max-width:40rem;font-size:1.125rem;line-height:1.6;color:var(--ink-2)}
.pg-numeros{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;margin-top:1.25rem;font-size:.875rem;color:var(--ink-2)}
.pg-numeros b{font-weight:500;color:var(--ink);font-variant-numeric:tabular-nums}
.pg-grade{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,17rem),1fr));gap:.75rem;margin-top:2rem}
.pg-grade > li{padding:1rem 1.125rem;border-radius:.875rem;box-shadow:0 0 0 1px var(--hair)}
.pg-esp{display:block;text-decoration:none}
.pg-esp-n{display:block;font-size:1.125rem;font-weight:500;letter-spacing:-.012em}
.pg-esp:hover .pg-esp-n{color:var(--accent)}
.pg-temas{display:flex;flex-wrap:wrap;gap:.25rem .75rem;margin-top:.625rem;font-size:.8125rem}
.pg-temas a{position:relative;color:var(--accent);text-decoration:none}
.pg-temas a::after{content:'';position:absolute;inset:-.625rem -.25rem}
.pg-temas a:hover{text-decoration:underline;text-underline-offset:.15em}
/* índices de temas */
.pg-idx{display:grid;gap:0;margin-top:.5rem}
.pg-idx li{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;padding:.3125rem 0;border-top:1px solid var(--hair-2)}
.pg-idx a{position:relative;font-size:.875rem;line-height:1.4;color:var(--ink);text-decoration:none}
.pg-idx a::after{content:'';position:absolute;inset:-.5rem -.25rem}
.pg-idx a:hover{color:var(--accent);text-decoration:underline;text-underline-offset:.15em}
.pg-idx .pg-lmeta{flex:none;margin:0;font-variant-numeric:tabular-nums}
.pg-temas-largo{gap:.375rem 1.125rem;font-size:.875rem}
.pg-h2-link,.pg-kicker-link{position:relative;color:inherit;text-decoration:none}
.pg-h2-link::after,.pg-kicker-link::after{content:'';position:absolute;inset:-.75rem -.25rem}
.pg-h2-link:hover,.pg-kicker-link:hover{text-decoration:underline;text-underline-offset:.2em}
.pg-nota a{color:var(--accent);text-decoration:underline;text-decoration-color:rgba(75,95,126,.4);text-underline-offset:.15em}
.pg-vazia{padding:4rem 0}
.pg-vazia h1{font-size:2rem;font-weight:500;letter-spacing:-.024em}
.pg-vazia p{margin-top:.75rem;color:var(--ink-2)}
.pg-vazia .pg-bt{margin-top:1.25rem}
.pg-descad form{margin-top:1.25rem}
.pg-descad form .pg-bt{margin-top:0;border:0;cursor:pointer;font-family:var(--fonte)}
.pg-descad-todos{margin-top:.75rem !important}

/* salvar e compartilhar (estudos) */
.pg-acoes{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}
.pg-acao{display:inline-flex;align-items:center;gap:.375rem;min-height:2.75rem;padding:0 1rem;border-radius:999px;background:#fff;box-shadow:inset 0 0 0 1px var(--hair);
  font:500 .8125rem var(--fonte);letter-spacing:.01em;color:var(--ink);text-decoration:none;cursor:pointer;-webkit-tap-highlight-color:transparent;
  transition:background-color .15s,transform 100ms ease-out}
.pg-acao:hover{background:var(--sunk)}
.pg-acao:active{transform:scale(.97)}
.pg-acao svg{width:1rem;height:1rem;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linejoin:round;stroke-linecap:round}
.pg-toast{position:fixed;left:50%;bottom:1.5rem;z-index:50;margin:0;padding:.625rem 1rem;border-radius:999px;background:var(--ink);color:#fff;
  font-size:.875rem;letter-spacing:.005em;opacity:0;transform:translate(-50%,.5rem);transition:opacity .18s ease,transform .22s ease;pointer-events:none}
.pg-toast.on{opacity:1;transform:translate(-50%,0)}
@media (prefers-reduced-motion:reduce){ .pg-toast{transform:translate(-50%,0)} }

/* profissionais verificados: listas e perfil (a identificação da Res. CFM 2.336/2023 vem sempre inteira) */
.pp-lista{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,22rem),1fr));gap:.5rem}
.pp-item{display:grid;grid-template-columns:3rem minmax(0,1fr);gap:.875rem;align-items:start;padding:.875rem 1rem;border-radius:1rem;background:var(--sunk);
  color:var(--ink);text-decoration:none;-webkit-tap-highlight-color:transparent;transition:background-color .15s,transform 100ms ease-out}
.pp-item:hover{background:var(--hair-2)}
.pp-item:active{transform:scale(.99)}
.pp-ini{display:grid;place-items:center;width:3rem;height:3rem;border-radius:.875rem;background:#fff;box-shadow:0 0 0 1px var(--hair);
  font-size:1rem;font-weight:300;letter-spacing:.01em;color:var(--ink)}
.pp-item-t{display:grid;gap:.125rem;min-width:0}
.pp-item-t b{font-size:1rem;font-weight:500;letter-spacing:-.008em}
.pp-cred{font-size:.75rem;font-weight:500;letter-spacing:.06em;color:var(--ink-2)}
.pp-lesp,.pp-onde{font-size:.8125rem;line-height:1.45;color:var(--ink-2)}
.pp-onde{color:var(--quiet)}
.pp-mais{margin-top:.875rem !important;font-size:.9375rem !important}
.pp-mais a{color:var(--accent);text-decoration:none}
.pp-mais a:hover{text-decoration:underline;text-underline-offset:.15em}
.pp-vazia{padding:2rem 0}
.pp-convite{margin-top:2.5rem}
.pp-cab{display:grid;grid-template-columns:auto minmax(0,1fr);gap:1.5rem;align-items:center;margin-top:1.25rem}
.pp-foto{display:grid;place-items:center;width:7.5rem;height:7.5rem;border-radius:1.25rem;overflow:hidden;background:var(--sunk);box-shadow:0 0 0 1px var(--hair)}
.pp-foto img{width:100%;height:100%;object-fit:cover}
.pp-foto span{font-size:2.25rem;font-weight:300;letter-spacing:-.01em;color:var(--ink)}
.pp-quem h1{font-size:clamp(1.75rem,4vw,2.375rem);line-height:1.12;font-weight:500;letter-spacing:-.024em}
.pp-quem .pp-cred{margin-top:.375rem;font-size:.8125rem}
.pp-esp{margin-top:.25rem;font-size:1rem;font-weight:500;letter-spacing:-.005em;color:var(--ink)}
.pp-verif{display:inline-flex;align-items:center;gap:.375rem;margin-top:.625rem;padding:.25rem .75rem .25rem .5rem;border-radius:999px;background:var(--sunk);
  font-size:.75rem;letter-spacing:.01em;color:var(--ink-2)}
.pp-verif svg{width:.875rem;height:.875rem;fill:none;stroke:var(--accent);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.pp-locais{display:grid;gap:.75rem}
.pp-locais li{display:grid;gap:.125rem;font-size:.9375rem;line-height:1.5}
.pp-locais b{font-weight:500}
.pp-locais span{color:var(--ink-2)}
.pp-atend{margin-top:.75rem !important;font-size:.9375rem !important;color:var(--ink-2) !important}
.pp-canais{display:flex;flex-wrap:wrap;gap:.5rem}
.pp-canal{display:inline-flex;align-items:center;min-height:2.75rem;padding:0 1.125rem;border-radius:999px;background:var(--sunk);
  font-size:.875rem;font-weight:500;letter-spacing:.005em;color:var(--ink);text-decoration:none;-webkit-tap-highlight-color:transparent;
  transition:background-color .15s,transform 100ms ease-out}
.pp-canal:hover{background:var(--hair-2)}
.pp-canal.forte{background:var(--ink);color:#fff}
.pp-canal.forte:hover{background:#1A2638}
.pp-canal:active{transform:scale(.97)}
.pp-form{display:grid;gap:.375rem;font-size:.9375rem;line-height:1.5;color:var(--ink-2)}
.pp-conta,.pg-conta{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.pp-atua{justify-self:start;margin-top:.25rem;padding:.125rem .625rem;border-radius:999px;background:#fff;box-shadow:inset 0 0 0 1px rgba(75,95,126,.34);
  font-size:.75rem;letter-spacing:.01em;color:var(--ink)}
@media (max-width:520px){ .pp-cab{grid-template-columns:minmax(0,1fr);gap:1rem} .pp-foto{width:5.5rem;height:5.5rem;border-radius:1rem} }

/* rodapé */
.pg-rodape{margin-top:4.5rem;padding:2.25rem 0 3.5rem;border-top:1px solid var(--hair);background:var(--paper)}
.pg-mapa-t{font-size:.6875rem;font-weight:500;letter-spacing:.098em;text-transform:uppercase;color:var(--quiet)}
.pg-mapa ul{display:grid;grid-template-columns:repeat(auto-fill,minmax(11rem,1fr));gap:.25rem 1rem;margin-top:.75rem}
.pg-mapa a{display:inline-flex;align-items:center;min-height:2.25rem;font-size:.8125rem;color:var(--ink-2);text-decoration:none}
.pg-mapa a:hover{color:var(--ink);text-decoration:underline;text-underline-offset:.15em}
.pg-hubs{margin-top:1.75rem}
.pg-aviso{margin-top:1.75rem;max-width:62ch;font-size:.6875rem;line-height:1.55;color:var(--quiet)}
.pg-assina{margin-top:.75rem;font-size:.6875rem;letter-spacing:.06em;color:var(--quiet)}

:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:.25rem}
@media (max-width:640px){
  .pg-nav a:not(.pg-nav-app){display:none}
  .cc{--ar:4/3}
  .cc-t{font-size:1.5rem;line-height:1.1}
  .cc-marca{padding:1rem 1.125rem 0}
  .cc-pe{padding:.875rem 0 0}
  .pg-sec p{font-size:1rem}
}
@media (prefers-reduced-motion:reduce){ *{transition:none !important} }
@media (prefers-reduced-transparency:reduce){ .pg-topo{background:var(--paper);-webkit-backdrop-filter:none;backdrop-filter:none} }
/* política de privacidade e termos de uso (api/pagina.mjs, paginaLegal): listas no corpo do texto e links sublinhados */
.pg-legal-lista{margin-top:.25rem;padding-left:1.25rem;list-style:disc}
.pg-legal-lista li{font-size:1.0625rem;line-height:1.7;color:var(--ink)}
.pg-legal-lista li + li{margin-top:.5rem}
.pg-legal-lista li::marker{color:var(--quiet)}
.pg-legal p + .pg-legal-lista,.pg-legal .pg-legal-lista + p{margin-top:.75rem}
.pg-legal strong{font-weight:500}
.pg-legal a{color:var(--accent);text-decoration:underline;text-decoration-color:rgba(75,95,126,.4);text-underline-offset:.15em}

/* ---------- traduzir: a barra "Traduzir para o português" (web/traduzir.js) ----------
   Uma faixa calma antes do texto: o que está em inglês, o que acontece ao tocar e o original a um toque. O retorno é
   no apertar (:active); o progresso fica dentro do ícone (anel), sem empurrar nada; movimento reduzido tira o giro. */
.trad{display:flex;align-items:center;flex-wrap:wrap;gap:.75rem 1rem;margin:0 0 1.5rem;padding:.875rem 1rem .875rem .875rem;
  border-radius:1rem;background:var(--sunk);box-shadow:inset 0 0 0 1px rgba(0,15,38,.07)}
.trad-ico{flex:none;display:grid;place-items:center;width:2.5rem;height:2.5rem;border-radius:50%;background:#fff;
  box-shadow:0 0 0 1px rgba(0,15,38,.08),0 4px 10px -6px rgba(0,15,38,.3)}
.trad-ico svg{width:1.25rem;height:1.25rem;fill:none;stroke:var(--ink);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.trad-txt{flex:1 1 15rem;min-width:0}
.trad-acoes{flex:0 1 auto;display:flex;align-items:center;flex-wrap:wrap;gap:.5rem 1.25rem;margin-left:auto}
.trad-t{font:500 .9375rem/1.35 var(--fonte);letter-spacing:-.006em;color:var(--ink)}
.trad-s{margin-top:.125rem;font:400 .8125rem/1.5 var(--fonte);letter-spacing:.006em;color:var(--ink-2)}
.trad-bt{position:relative;flex:none;display:inline-flex;align-items:center;justify-content:center;min-height:2.75rem;padding:0 1.25rem;
  border:0;border-radius:999px;background:var(--ink);color:#fff;font:500 .875rem var(--fonte);letter-spacing:.004em;cursor:pointer;
  transition:transform 100ms ease-out,background-color .15s}
.trad-bt:hover{background:#1A2638}
.trad-bt:active{transform:scale(.97)}
.trad-bt:focus-visible,.trad-auto:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.trad-bt[disabled]{opacity:.55;cursor:default;transform:none}
.trad-bt-s{background:#fff;color:var(--ink);box-shadow:inset 0 0 0 1px rgba(0,15,38,.2)}
.trad-bt-s:hover{background:#fff;box-shadow:inset 0 0 0 1px rgba(0,15,38,.35)}
/* "Traduzir sozinho": um interruptor pequeno; a área de toque cresce pelo pseudo-elemento, sem engordar o desenho */
.trad-auto{position:relative;flex:none;display:inline-flex;align-items:center;gap:.5rem;padding:0;border:0;background:none;cursor:pointer;
  font:400 .75rem var(--fonte);letter-spacing:.012em;color:var(--ink-2)}
.trad-auto::after{content:'';position:absolute;inset:-.75rem -.5rem}
.trad-auto::before{content:'';width:1.75rem;height:1rem;border-radius:999px;background:rgba(0,15,38,.18);
  box-shadow:inset 0 0 0 2px transparent;transition:background-color .2s;
  background-image:radial-gradient(circle at .5rem 50%,#fff .375rem,transparent .4rem)}
.trad-auto[aria-checked="true"]::before{background-color:var(--ink);background-image:radial-gradient(circle at 1.25rem 50%,#fff .375rem,transparent .4rem)}
.trad-anel{width:1.25rem;height:1.25rem;transform:rotate(-90deg)}
.trad-anel circle{fill:none;stroke-width:2.2}
.trad-anel circle:first-child{stroke:rgba(0,15,38,.14)}
.trad-anel-v{stroke:var(--ink);stroke-linecap:round;stroke-dasharray:50.27;stroke-dashoffset:50.27;transition:stroke-dashoffset .25s ease-out}
.trad-indef .trad-anel{animation:trad-gira .9s linear infinite}
.trad-indef .trad-anel-v{stroke-dashoffset:36}
@keyframes trad-gira{to{transform:rotate(270deg)}}
@media (prefers-reduced-motion: reduce){.trad-indef .trad-anel{animation:none}.trad-bt{transition:none}}
@media (max-width:560px){.trad-acoes{flex:1 1 100%;margin-left:0}.trad-bt{flex:1 1 auto}.trad{padding:1rem}}
