﻿/* =========================================================
   Legal docs (Terms / Privacy) — “pro document” treatment
   ========================================================= */

:root {
    --gt-legal-ink: #111827; /* slate-900 */
    --gt-legal-muted: #6b7280; /* slate-500 */
    --gt-legal-border: #e5e7eb; /* gray-200 */
    --gt-legal-surface: #ffffff;
    --gt-legal-accent: #0f46b8; /* your blue */
}

.gt-modal .modal-content {
    color: var(--gt-legal-ink);
}

/* A readable “paper” column inside the modal */
.gt-legal {
    max-width: 62rem;
    padding: 0rem 0.25rem 1rem;
    font-size: 0.98rem;
    line-height: 1.65;
}

/* Title + meta */
.gt-legal__title {
    margin: 0 0 6px 0;
    font-size: 1.85rem;
    letter-spacing: 0.2px;
    line-height: 1.2;
}

.gt-legal__meta {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    font-weight: 650;
    color: var(--gt-legal-muted);
    margin: 0 0 18px 0;
    padding: 6px 10px;
    border: 1px solid var(--gt-legal-border);
    border-radius: 999px;
    background: rgba(17,24,39,0.02);
}

/* Sections: add rhythm + subtle separators */
.gt-legal__section {
    margin: 0 0 18px 0;
    padding: 0 0 18px 0;
    border-bottom: 1px solid var(--gt-legal-border);
}

    .gt-legal__section:last-child {
        border-bottom: 0;
        padding-bottom: 0;
    }

    /* Section headings: clearer hierarchy, not “notepad” */
    .gt-legal__section h4 {
        margin: 16px 0 10px 0;
        font-weight: 800;
        font-size: 1.15rem;
        letter-spacing: 0.2px;
        line-height: 1.25;
        /* visual cue */
        padding-left: 12px;
        border-left: 4px solid rgba(15,70,184,0.25);
    }

    /* Make the first section read like an intro block */
    .gt-legal__section:first-of-type {
        padding: 14px 14px 16px;
        border: 1px solid var(--gt-legal-border);
        border-radius: 12px;
        background: rgba(15,70,184,0.03);
        box-shadow: 0 1px 0 rgba(0,0,0,0.02);
    }

/* Underlined “addresses” look more intentional */
.gt-legal u {
    text-underline-offset: 3px;
    text-decoration-thickness: 2px;
}

/* Links (if any appear) */
.gt-legal a {
    color: var(--gt-legal-accent);
    text-decoration: underline;
    text-underline-offset: 2px;
}

    .gt-legal a:hover {
        filter: brightness(1.08);
    }

/* Improve readability on very wide screens */
@media (min-width: 992px) {
    .gt-legal {
        font-size: 1.02rem;
    }
}

/* Lists inside legal docs */
.gt-legal__list {
    margin: 0.25rem 0 0.75rem 1.15rem;
    padding: 0;
}

    .gt-legal__list li {
        margin: 0.35rem 0;
    }

.gt-legal__list--alpha {
    list-style: lower-alpha;
}

.gt-legal__list--roman {
    list-style: lower-roman;
}

.gt-legal__list--bullets {
    list-style: disc;
}

/* Callouts (for arbitration / warnings) */
.gt-legal__callout {
    margin: 14px 0 0;
    padding: 12px 14px;
    border-radius: 12px;
    border: 1px solid rgba(15,70,184,0.20);
    background: rgba(15,70,184,0.04);
}

.gt-legal__callout--warning {
    border-color: rgba(245, 158, 11, 0.35);
    background: rgba(245, 158, 11, 0.06);
}

.gt-legal__callout p:last-child {
    margin-bottom: 0;
}

/* Address block polish */
.gt-legal__address {
    margin: 10px 0 0;
    padding: 10px 12px;
    border: 1px solid var(--gt-legal-border);
    border-radius: 12px;
    background: rgba(17,24,39,0.02);
    font-style: normal;
    line-height: 1.55;
}

/* Paragraph spacing inside legal doc */
.gt-legal p {
    margin: 0 0 0.85rem 0;
}
