/* Landing World: casca da página (cabeçalho, estados). As seções têm o próprio CSS em landing/secoes/. Só tokens --pop-*. */
body.cs-pop { margin: 0; min-height: 100vh; }
.lw-pular { position: absolute; left: -9999px; top: 0; background: var(--pop-amarelo); color: var(--pop-carvao); padding: 8px 16px; border: var(--pop-borda); border-radius: var(--pop-raio-botao); z-index: 20; }
.lw-pular:focus { left: 8px; top: 8px; }
.lw-topo { position: sticky; top: 0; z-index: 10; background: var(--pop-bg); border-bottom: var(--pop-borda); }
.lw-nav { display: flex; align-items: center; gap: 20px; padding: 10px 20px; max-width: 1180px; margin: 0 auto; }
.lw-logo { display: flex; align-items: center; gap: 10px; text-decoration: none; color: var(--pop-ink); font-family: var(--pop-font-display); font-size: 1.625rem; }
.lw-links { margin-left: auto; display: flex; gap: 18px; flex-wrap: wrap; }
.lw-links a { color: var(--pop-ink); font-weight: 600; text-decoration: none; padding: 6px 0; }
.lw-links a:hover { text-decoration: underline; text-decoration-thickness: 3px; }
.lw-nav a:focus-visible, .lw-pular:focus-visible { outline: 3px solid var(--pop-tinta); outline-offset: 3px; }
main { overflow-x: clip; }
main:focus { outline: none; }
.lw-estado { max-width: 1180px; margin: 0 auto; padding: 48px 20px; }
.lw-erro { padding: 24px; display: flex; gap: 16px; align-items: center; flex-wrap: wrap; justify-content: space-between; }
.lw-erro p { margin: 0; }
@media (max-width: 760px) { .lw-links { display: none; } .lw-nav { justify-content: space-between; } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
