/* Legal (Terms of Use, Privacy Policy, Accessibility; PCGBUR-4, 08/11/2026): indice fixo a esquerda + coluna de
   leitura de ~68ch. Texto longo fica a esquerda (excecao prevista no cabecalho do theme.css). Hero no padrao unico
   (theme.css), com foto propria. */
.pcg-legal { padding-top: clamp(32px, 4vw, 56px); }

.pcg-legal__grade { display: grid; grid-template-columns: 15rem minmax(0, 1fr); gap: clamp(40px, 5vw, 80px); align-items: start; max-width: 66rem; margin-inline: auto; }

.pcg-legal__indice { position: sticky; top: calc(var(--topo-h) + 24px); max-height: calc(100vh - var(--topo-h) - 48px); overflow-y: auto; overscroll-behavior: contain; padding-right: 8px; }
.pcg-legal__indice-titulo { font: 700 .9375rem/1.3 var(--f-texto); color: var(--texto); padding-bottom: 12px; border-bottom: 1px solid var(--linha); margin-bottom: 8px; }
.pcg-legal__indice ol { list-style: none; margin: 0; padding: 0; }
.pcg-legal__indice a {
  display: block; padding: 7px 0; color: var(--texto-mudo); text-decoration: none; font-size: .9375rem; line-height: 1.35;
  transition: color .2s var(--ease);
}
@media (hover: hover) { .pcg-legal__indice a:hover { color: var(--ouro-vivo); } }

.pcg-legal__texto { max-width: 68ch; color: var(--texto-2); font-size: 1.0625rem; line-height: 1.7; text-wrap: pretty; }
.pcg-legal__texto > :first-child { margin-top: 0; }
.pcg-legal__data { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; color: var(--texto-mudo); font-size: .9375rem; margin-bottom: clamp(24px, 3vw, 40px); }
.pcg-legal__texto h2 {
  font: 400 clamp(1.625rem, 2.4vw, 2rem)/1.05 var(--f-display); text-transform: uppercase; letter-spacing: .01em; color: var(--texto);
  margin: clamp(48px, 5vw, 64px) 0 16px; padding-top: 20px; border-top: 1px solid var(--linha);
}
.pcg-legal__data + h2 { margin-top: 0; }
.pcg-legal__texto h3 { font: 700 1.125rem/1.3 var(--f-texto); color: var(--texto); margin: 28px 0 8px; }
.pcg-legal__texto p + p { margin-top: 1em; }
.pcg-legal__texto strong { color: var(--texto); }
.pcg-legal__texto ul { margin: 16px 0 0; padding-left: 1.25em; display: grid; gap: 10px; }
.pcg-legal__texto li::marker { color: var(--ouro); }
.pcg-legal__texto ul + p { margin-top: 1em; }
.pcg-legal__texto a { color: var(--ouro-vivo); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 4px; overflow-wrap: anywhere; }
@media (hover: hover) { .pcg-legal__texto a:hover { color: var(--texto); text-decoration-color: var(--ouro); } }
/* selo "to confirm" no meio da frase: inline, alinhado ao texto */
.pcg-legal__texto .pcg-pendente__nota { display: inline-block; vertical-align: .1em; line-height: 1; }

/* bloco de contato da declaracao de acessibilidade: linha dourada no topo, como o cartao de loja */
.pcg-legal__destaque { margin-top: clamp(48px, 5vw, 64px); padding: 28px clamp(20px, 3vw, 32px); background: var(--superficie); border: 1px solid var(--linha); border-top: 2px solid var(--ouro); border-radius: var(--raio); }
.pcg-legal__destaque h2 { margin-top: 0; padding-top: 0; border-top: 0; }

@media (max-width: 899.98px) {
  .pcg-legal__grade { grid-template-columns: minmax(0, 1fr); gap: 40px; }
  .pcg-legal__indice { position: static; max-height: none; overflow: visible; padding: 20px; background: var(--superficie); border: 1px solid var(--linha); border-radius: var(--raio); }
  .pcg-legal__indice a { padding: 9px 0; min-height: 44px; display: flex; align-items: center; }
}

/* o indice rola (overflow-y) e recortava o anel de fora dos links: anel por dentro (PCGBUR-6) */
.pcg-legal__indice a:focus-visible { outline-offset: -3px; }
