/* Legal Page Styles */
:root { --space-sm: 10px; --space-md: 20px; --space-lg: 40px; }
.legal-container { max-width: 900px; margin: 0 auto; padding: 100px 20px 60px; }
.legal-content { background: var(--bg-color); border-radius: 20px; padding: 50px; box-shadow: var(--shadow-lg); border: 1px solid var(--border-color); }
.last-updated { color: var(--text-light); font-size: 0.9rem; margin-bottom: var(--space-lg); padding-bottom: var(--space-md); border-bottom: 2px solid var(--primary-color); }
.legal-toc { background: var(--bg-secondary); padding: 30px; border-radius: 12px; margin-bottom: var(--space-lg); }
.legal-toc h2 { font-size: 1.3rem; margin-bottom: 20px; color: var(--secondary-color); }
.legal-toc ol { counter-reset: toc-counter; }
.legal-toc li { counter-increment: toc-counter; margin-bottom: 12px; padding-left: 35px; position: relative; }
.legal-toc li::before { content: counter(toc-counter); position: absolute; left: 0; top: 2px; width: 24px; height: 24px; background: var(--primary-color); color: var(--secondary-color); border-radius: 50%; font-size: 0.85rem; font-weight: 600; display: flex; align-items: center; justify-content: center; }
.legal-toc a { color: var(--text-color); transition: var(--transition); }
.legal-toc a:hover { color: var(--primary-color); text-decoration: underline; }
.legal-section { margin-bottom: var(--space-lg); padding-bottom: var(--space-lg); border-bottom: 1px solid var(--border-color); }
.legal-section:last-child { border-bottom: none; margin-bottom: 0; }
.legal-section h2 { font-size: 1.6rem; color: var(--secondary-color); margin-bottom: var(--space-md); padding-bottom: 10px; border-bottom: 2px solid var(--primary-color); display: inline-block; }
.legal-section h3 { font-size: 1.2rem; margin-top: var(--space-md); margin-bottom: var(--space-sm); }
.legal-section p { color: var(--text-color); line-height: 1.8; }
.legal-section ul, .legal-section ol { margin-left: var(--space-md); margin-bottom: var(--space-md); }
.legal-section li { margin-bottom: 8px; padding-left: 20px; position: relative; line-height: 1.6; }
.legal-section li::before { content: "•"; position: absolute; left: 0; color: var(--primary-color); font-weight: bold; }
.legal-section strong { color: var(--secondary-color); }
.info-box { background: #e8f4fd; padding: 25px; border-radius: 12px; margin: var(--space-md) 0; border-left: 4px solid #2196f3; }
.info-box h4 { margin-bottom: 10px; }
.highlight-box { background: #fff8e1; padding: 25px; border-radius: 12px; margin: var(--space-md) 0; border-left: 4px solid var(--primary-color); }
.highlight-box h4 { margin-bottom: 10px; }
.contact-box { background: var(--bg-secondary); padding: 30px; border-radius: 12px; margin: var(--space-md) 0; border: 2px solid var(--primary-color); }
.contact-box h4 { margin-bottom: 15px; color: var(--secondary-color); }
.contact-box p { margin-bottom: 10px; }
.ad-platform-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 20px; margin: var(--space-md) 0; }
.ad-platform-card { background: var(--bg-secondary); padding: 20px; border-radius: 10px; border: 1px solid var(--border-color); }
.ad-platform-card h4 { margin-bottom: 8px; color: var(--secondary-color); font-size: 1rem; }
.ad-platform-card p { font-size: 0.9rem; color: var(--text-light); margin-bottom: 0; }
.ad-platform-card a { color: var(--primary-color); text-decoration: underline; }
.data-rights-table { width: 100%; border-collapse: collapse; margin: var(--space-md) 0; }
.data-rights-table th, .data-rights-table td { padding: 15px; text-align: left; border-bottom: 1px solid var(--border-color); }
.data-rights-table th { background: var(--bg-secondary); font-weight: 600; color: var(--secondary-color); }
.data-rights-table tr:hover { background: var(--bg-secondary); }
@media (max-width: 768px) {
    .legal-container { padding: 120px 15px 40px; }
    .legal-content { padding: 30px 20px; }
    .legal-section h2 { font-size: 1.3rem; }
    .ad-platform-grid { grid-template-columns: 1fr; }
    .data-rights-table { font-size: 0.9rem; }
    .data-rights-table th, .data-rights-table td { padding: 10px; }
}