/* A legal text on a ruled card; sections numbered 01, 02… like form fields. */

.legal-document {
    max-width: 780px;
    margin: var(--space-sm) auto 0;
    padding: var(--space-xxl);
    border: var(--border);
    border-radius: var(--radius);
    background: var(--color-card);
    counter-reset: legal-section;
}

.legal-document__header {
    margin-bottom: var(--space-xl);
    padding-bottom: var(--space-lg);
    border-bottom: var(--border);
}

.layout .legal-document__title {
    margin: 0;
    font-size: 32px;
    line-height: 1.2;
}

.legal-document__updated {
    margin: var(--space-xs) 0 0;
    font-family: var(--font-mono);
    font-size: 13px;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--color-text-secondary);
}

.legal-document__section + .legal-document__section {
    margin-top: var(--space-xl);
    padding-top: var(--space-xl);
    border-top: 1px dashed var(--color-rule);
}

.layout .legal-document__section h2 {
    margin: 0 0 var(--space-sm);
    font-size: 19px;
}

.legal-document__section h2::before {
    counter-increment: legal-section;
    content: counter(legal-section, decimal-leading-zero);
    margin-right: var(--space-md);
    color: var(--color-label);
}

.legal-document__section p,
.legal-document__section ul {
    margin: 0 0 var(--space-md);
}

.legal-document__section > :last-child {
    margin-bottom: 0;
}

.legal-document__section li + li {
    margin-top: var(--space-xs);
}

@media (max-width: 600px) {
    .legal-document {
        padding: var(--space-xl) var(--space-lg);
    }
}
