/* =============================================
   Legal Pages (Privacy, Terms)
   ============================================= */

.legal__header {
    padding: 140px 0 48px;
    background: var(--bg-alt);
}

.legal__header h1 {
    font-size: 2.4rem;
    font-weight: 700;
    letter-spacing: -0.02em;
    margin-bottom: 8px;
}

.legal__updated {
    font-size: 0.9rem;
    color: var(--text-muted);
}

.legal__content {
    padding: 64px 0 100px;
}

.legal__intro {
    padding-bottom: 40px;
    margin-bottom: 40px;
    border-bottom: 1px solid var(--border);
}

.legal__intro p {
    font-size: 0.95rem;
    color: var(--text-secondary);
    line-height: 1.75;
    margin-bottom: 12px;
}

.legal__intro p:last-child {
    margin-bottom: 0;
}

.legal__intro a {
    color: var(--teal);
    font-weight: 600;
}

.legal__section {
    margin-bottom: 48px;
}

.legal__section:last-child {
    margin-bottom: 0;
}

.legal__section h2 {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--text);
    margin-bottom: 16px;
    padding-top: 8px;
}

.legal__section h3 {
    font-size: 1.15rem;
    font-weight: 700;
    color: var(--text);
    margin-top: 28px;
    margin-bottom: 10px;
}

.legal__section h4 {
    font-size: 1rem;
    font-weight: 700;
    color: var(--text);
    margin-top: 24px;
    margin-bottom: 8px;
}

.legal__section p {
    font-size: 0.95rem;
    color: var(--text-secondary);
    line-height: 1.75;
    margin-bottom: 12px;
}

.legal__section a {
    color: var(--teal);
    font-weight: 600;
}

.legal__section ul,
.legal__section ol {
    margin: 8px 0 16px 20px;
    color: var(--text-secondary);
}

.legal__section ul li,
.legal__section ol li {
    font-size: 0.95rem;
    line-height: 1.75;
    margin-bottom: 4px;
}

.legal__section strong {
    color: var(--text);
    font-weight: 600;
}

/* Definitions */

.legal__definitions {
    margin: 16px 0;
}

.legal__definitions dt {
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--text);
    margin-top: 16px;
    margin-bottom: 4px;
}

.legal__definitions dd {
    font-size: 0.95rem;
    color: var(--text-secondary);
    line-height: 1.75;
    margin-left: 0;
}

/* Callout */

.legal__callout {
    background: var(--teal-light);
    border-left: 3px solid var(--teal);
    border-radius: 8px;
    padding: 20px 24px;
    margin: 20px 0;
}

.legal__callout p {
    margin-bottom: 8px;
}

.legal__callout p:last-child {
    margin-bottom: 0;
}

.legal__callout ul {
    margin: 8px 0 8px 20px;
}

/* Responsive */

@media (max-width: 600px) {
    .legal__header {
        padding: 120px 0 36px;
    }

    .legal__header h1 {
        font-size: 1.8rem;
    }

    .legal__content {
        padding: 48px 0 72px;
    }

    .legal__section h2 {
        font-size: 1.3rem;
    }
}
