/* =========================================================
   LEGAL PAGES
   Privacy / Terms / Cookies
========================================================= */

.legal-page {
    min-height: 100vh;

    padding:
        9rem
        1.5rem
        6rem;

    background:
        linear-gradient(
            180deg,
            #0b0f19 0%,
            #0d111b 100%
        );

    color: #f3f3f3;
}


/* =========================================================
   CONTAINER
========================================================= */

.legal-container {
    width: 100%;
    max-width: 920px;

    margin: 0 auto;
}


/* =========================================================
   HEADER
========================================================= */

.legal-header {
    margin-bottom: 4rem;
}

.legal-eyebrow {
    margin: 0 0 0.8rem;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 0.78rem;
    font-weight: 700;

    letter-spacing: 0.18em;

    text-transform: uppercase;

    color: #aeb7c6;
}

.legal-header h1 {
    margin: 0;

    font-size: clamp(
        2.4rem,
        5vw,
        4.4rem
    );

    font-weight: 700;

    line-height: 1.02;

    letter-spacing: -0.035em;

    color: #ffffff;
}

.legal-updated {
    margin: 1rem 0 0;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 0.9rem;

    line-height: 1.5;

    color: #8f98a7;
}


/* =========================================================
   CONTENT
========================================================= */

.legal-content {
    display: flex;
    flex-direction: column;

    gap: 3.2rem;
}

.legal-content section {
    padding-bottom: 3rem;

    border-bottom:
        1px solid
        rgba(255, 255, 255, 0.08);
}

.legal-content section:last-child {
    padding-bottom: 0;

    border-bottom: 0;
}


/* =========================================================
   HEADINGS
========================================================= */

.legal-content h2 {
    margin:
        0
        0
        1.25rem;

    font-size: clamp(
        1.4rem,
        2.5vw,
        1.8rem
    );

    font-weight: 650;

    line-height: 1.2;

    letter-spacing: -0.018em;

    color: #ffffff;
}

.legal-content h3 {
    margin:
        2rem
        0
        0.75rem;

    font-size: 1.05rem;
    font-weight: 650;

    line-height: 1.35;

    color: #dce2eb;
}


/* =========================================================
   TEXT
========================================================= */

.legal-content p {
    margin:
        0
        0
        1rem;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 1rem;
    font-weight: 400;

    line-height: 1.75;

    color: #b7c0cd;
}

.legal-content p:last-child {
    margin-bottom: 0;
}


/* =========================================================
   LISTS
========================================================= */

.legal-content ul {
    margin:
        1rem
        0
        0;

    padding-left: 1.35rem;
}

.legal-content li {
    margin-bottom: 0.75rem;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 1rem;

    line-height: 1.7;

    color: #b7c0cd;
}

.legal-content li:last-child {
    margin-bottom: 0;
}


/* =========================================================
   LINKS
========================================================= */

.legal-content a {
    color: #ffffff;

    text-decoration:
        underline;

    text-decoration-thickness:
        1px;

    text-underline-offset:
        3px;

    transition:
        opacity
        0.2s
        ease;
}

.legal-content a:hover {
    opacity: 0.7;
}

.legal-content a:focus-visible {
    outline:
        2px solid
        #ffffff;

    outline-offset:
        4px;
}


/* =========================================================
   TABLES
   Future-proof for cookie tables / data summaries
========================================================= */

.legal-content table {
    width: 100%;

    margin-top: 1.5rem;

    border-collapse: collapse;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 0.95rem;
}

.legal-content th,
.legal-content td {
    padding:
        0.95rem
        1rem;

    text-align: left;
    vertical-align: top;

    border:
        1px solid
        rgba(255, 255, 255, 0.08);
}

.legal-content th {
    font-weight: 650;

    color: #ffffff;

    background:
        rgba(255, 255, 255, 0.035);
}

.legal-content td {
    color: #b7c0cd;
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 900px) {

    .legal-page {
        padding:
            8rem
            1.25rem
            5rem;
    }

    .legal-header {
        margin-bottom: 3.5rem;
    }

    .legal-content {
        gap: 2.8rem;
    }

    .legal-content section {
        padding-bottom: 2.6rem;
    }

}


@media (max-width: 640px) {

    .legal-page {
        padding:
            7rem
            1rem
            4rem;
    }

    .legal-header {
        margin-bottom: 3rem;
    }

    .legal-eyebrow {
        font-size: 0.72rem;

        letter-spacing: 0.16em;
    }

    .legal-header h1 {
        font-size: clamp(
            2rem,
            11vw,
            3rem
        );
    }

    .legal-updated {
        font-size: 0.84rem;
    }

    .legal-content {
        gap: 2.4rem;
    }

    .legal-content section {
        padding-bottom: 2.2rem;
    }

    .legal-content h2 {
        margin-bottom: 1rem;

        font-size: 1.35rem;
    }

    .legal-content h3 {
        margin-top: 1.6rem;

        font-size: 1rem;
    }

    .legal-content p,
    .legal-content li {
        font-size: 0.95rem;

        line-height: 1.68;
    }

    .legal-content ul {
        padding-left: 1.2rem;
    }

    .legal-content table {
        display: block;

        overflow-x: auto;

        font-size: 0.9rem;
    }

    .legal-content th,
    .legal-content td {
        min-width: 150px;

        padding:
            0.8rem
            0.85rem;
    }

}


@media (max-width: 420px) {

    .legal-page {
        padding:
            6.5rem
            0.85rem
            3.5rem;
    }

    .legal-header {
        margin-bottom: 2.5rem;
    }

    .legal-content {
        gap: 2rem;
    }

    .legal-content section {
        padding-bottom: 2rem;
    }

}