.legal-container {
    max-width: 880px;
    margin: 0 auto;
    padding: 3rem 1.25rem 4rem;
    color: var(--text, #1f2937);
    line-height: 1.75;
    font-size: 0.95rem;
    word-break: keep-all;
}

.legal-header {
    border-bottom: 1px solid #e5e7eb;
    padding-bottom: 1.25rem;
    margin-bottom: 2rem;
}

.legal-header h1 {
    font-size: 1.85rem;
    font-weight: 700;
    margin: 0 0 0.5rem;
}

.legal-meta {
    color: var(--text-muted, #6b7280);
    font-size: 0.85rem;
    margin: 0;
}

.legal-lead {
    background: #f8fafc;
    border-left: 3px solid var(--primary, #2563eb);
    padding: 0.9rem 1rem;
    border-radius: 0 0.4rem 0.4rem 0;
    margin: 0 0 2rem;
}

.legal-section {
    margin: 0 0 2.25rem;
}

.legal-section h2 {
    font-size: 1.1rem;
    font-weight: 700;
    margin: 0 0 0.75rem;
    padding-bottom: 0.4rem;
    border-bottom: 1px solid #f1f5f9;
}

.legal-section h3 {
    font-size: 0.98rem;
    font-weight: 600;
    margin: 1.1rem 0 0.4rem;
}

.legal-section p,
.legal-section li {
    color: #374151;
}

.legal-section ol,
.legal-section ul {
    padding-left: 1.4rem;
    margin: 0.4rem 0 0.6rem;
}

.legal-section li {
    margin-bottom: 0.3rem;
}

.legal-section li > ul {
    margin-top: 0.3rem;
}

.legal-section strong {
    color: #111827;
}

@media (max-width: 640px) {
    .legal-container { padding: 2rem 1rem 3rem; font-size: 0.92rem; }
    .legal-header h1 { font-size: 1.5rem; }
}
