/* Landing World — estilos da seção "hero" (LW-V1). Só tokens --pop-*; sem HEX. Pressupõe pop.css. */
.lw-hero { padding: 48px 16px 0; max-width: 1200px; margin: 0 auto; }
.lw-hero-card { display: grid; grid-template-columns: 1.1fr .9fr; gap: 32px; align-items: center; padding: 48px; }
.lw-hero h1 { margin: 14px 0; }
.lw-hero h1 em { font-style: normal; background: var(--pop-amarelo); color: var(--pop-carvao); border: var(--pop-borda); border-radius: var(--pop-raio-botao); padding: 0 12px; display: inline-block; transform: rotate(-2deg); }
.lw-hero-p { font-size: var(--pop-t-corpo); max-width: 46ch; margin: 0; }
.lw-hero-ctas { display: flex; gap: 16px; flex-wrap: wrap; margin-top: 24px; }
.lw-hero-cena { display: flex; justify-content: center; }
.lw-hero-mascote { width: 100%; max-width: 420px; height: auto; aspect-ratio: 1 / 1; object-fit: contain; animation: lw-hero-balanco 4s ease-in-out infinite; }
.lw-hero-mascote--cobrir { object-fit: cover; }
.lw-hero-mascote--espelho { scale: -1 1; }
.lw-hero-mascote--parado { animation: none; }
@keyframes lw-hero-balanco { 0%, 100% { transform: rotate(-2deg); } 50% { transform: rotate(2deg) translateY(-6px); } }
.lw-hero h1, .lw-hero-p { overflow-wrap: anywhere; }
.lw-hero-card > * { min-width: 0; }
@media (min-width: 1920px) { .lw-hero { max-width: 1440px; } }
@media (max-width: 760px) { .lw-hero-card { grid-template-columns: 1fr; padding: 28px; } }
@media (prefers-reduced-motion: reduce) { .lw-hero-mascote { animation: none; } }
