/* Legal Page Styles - Matching Live Site */

/* =============================================
   LEGAL CONTENT TYPOGRAPHY
   ============================================= */

.legal-content {
    font-family: 'Outfit', var(--font-outfit), sans-serif;
    color: var(--swatch--brand-text);
    max-width: 100%;
    font-size: var(--_typography---font-size--text-main, 1.3125rem);
    line-height: 1.5;
}

.legal-content p {
    font-size: var(--_typography---font-size--text-main, 1.3125rem);
    font-weight: 300;
    line-height: 1.5;
    margin-top: 0;
    margin-bottom: 1.25rem;
    color: inherit;
}

.legal-content h2 {
    font-size: var(--_typography---font-size--h2, 2.125rem);
    font-weight: 400;
    margin-top: 2.5rem;
    margin-bottom: 1.25rem;
    color: inherit;
    line-height: 1.2;
    letter-spacing: -0.02em;
}

.legal-content h3 {
    font-size: var(--_typography---font-size--h3, 1.5rem);
    font-weight: 500;
    margin-top: 2rem;
    margin-bottom: 1rem;
    color: inherit;
    line-height: 1.3;
}

.legal-content h4 {
    font-size: var(--_typography---font-size--h4, 1.125rem);
    font-weight: 500;
    margin-top: 1.25rem;
    margin-bottom: 0.75rem;
    color: inherit;
    line-height: 1.3;
}

.legal-content ul {
    margin-top: 0.75rem;
    margin-bottom: 1.25rem;
    padding-left: 1.5rem;
    list-style-type: disc;
}

.legal-content li {
    font-size: var(--_typography---font-size--text-main, 1.3125rem);
    font-weight: 300;
    line-height: 1.5;
    margin-bottom: 0.5rem;
}

.legal-content a {
    text-decoration: underline;
    color: inherit;
    transition: opacity 0.2s ease;
}

.legal-content a:hover {
    opacity: 0.7;
}

.legal-content strong {
    font-weight: 600;
}

/* First paragraph - intro text */
.legal-content > p:first-child {
    font-size: var(--_typography---font-size--text-main, 1.3125rem);
    margin-bottom: 2rem;
}

/* =============================================
   RESPONSIVE BREAKPOINTS
   ============================================= */

/* Tablet */
@media screen and (max-width: 991px) {
    .legal-content p,
    .legal-content li,
    .legal-content > p:first-child {
        font-size: 1.125rem;
    }

    .legal-content h2 {
        font-size: 1.75rem;
        margin-top: 2rem;
        margin-bottom: 1rem;
    }

    .legal-content h3 {
        font-size: 1.25rem;
        margin-top: 1.75rem;
        margin-bottom: 0.875rem;
    }

    .legal-content h4 {
        font-size: 1.0625rem;
    }
}

/* Mobile Landscape */
@media screen and (max-width: 767px) {
    .legal-content p,
    .legal-content li,
    .legal-content > p:first-child {
        font-size: 1rem;
    }

    .legal-content h2 {
        font-size: 1.5rem;
        margin-top: 1.75rem;
        margin-bottom: 1rem;
    }

    .legal-content h3 {
        font-size: 1.125rem;
        margin-top: 1.5rem;
        margin-bottom: 0.75rem;
    }

    .legal-content h4 {
        font-size: 1rem;
    }
}

/* Mobile Portrait */
@media screen and (max-width: 479px) {
    .legal-content p,
    .legal-content li,
    .legal-content > p:first-child {
        font-size: 0.9375rem;
    }

    .legal-content h2 {
        font-size: 1.375rem;
        margin-top: 1.5rem;
        margin-bottom: 0.875rem;
    }

    .legal-content h3 {
        font-size: 1.0625rem;
        margin-top: 1.25rem;
        margin-bottom: 0.625rem;
    }

    .legal-content h4 {
        font-size: 0.9375rem;
    }

    .legal-content ul {
        padding-left: 1.25rem;
    }
}
