/* HupiLink — legal.css (estilo das páginas legais) */

.legal-page { padding: 140px 0 80px; background-color: var(--light-gray); min-height: 100vh; }
.legal-container { max-width: 860px; margin: 0 auto; padding: 0 20px; }
.legal-header { text-align: center; margin-bottom: 50px; }
.legal-header .section-badge { margin-bottom: 16px; }
.legal-header h1 { font-size: clamp(2rem, 4vw, 2.8rem); font-weight: 900; color: var(--dark); margin-bottom: 12px; letter-spacing: -0.5px; }
.legal-header .legal-updated { font-size: 0.9rem; color: var(--muted); }
.legal-content { background: var(--white); border-radius: var(--radius-lg); padding: 48px 44px; box-shadow: var(--shadow); border: 1px solid var(--line); }
.legal-content h2 { font-size: 1.5rem; color: var(--dark); margin: 36px 0 14px; padding-bottom: 10px; border-bottom: 2px solid var(--orange-tint); font-weight: 800; }
.legal-content h2:first-child { margin-top: 0; }
.legal-content h3 { font-size: 1.15rem; color: var(--dark-gray); margin: 24px 0 10px; font-weight: 800; }
.legal-content p { font-size: 1rem; color: var(--dark-gray); margin-bottom: 14px; line-height: 1.75; }
.legal-content ul, .legal-content ol { margin: 0 0 18px 22px; }
.legal-content li { font-size: 1rem; color: var(--dark-gray); margin-bottom: 10px; line-height: 1.7; }
.legal-content a { color: var(--orange); font-weight: 700; text-decoration: underline; }
.legal-content strong { color: var(--dark); }
.legal-back { display: inline-flex; align-items: center; gap: 8px; margin-top: 30px; color: var(--orange); font-weight: 800; text-decoration: none; transition: var(--transition); }
.legal-back:hover { transform: translateX(-4px); }
@media (max-width: 768px) {
    .legal-page { padding: 120px 0 60px; }
    .legal-content { padding: 32px 24px; }
}
