/* ============================================================
   Audit Copilot - Trust center
   Public legal/security document hub (/trust). Layered on the
   Fluent 2 tokens in fluent-theme.css and the public landing
   page look, so it reads as one site.
   ============================================================ */

.trust-hero {
    background: radial-gradient(1000px 500px at 15% -20%, rgba(79, 124, 255, 0.12), transparent 60%),
                #f6f8fc;
    border-bottom: 1px solid #e7ecf5;
    padding: 3rem 0 3.25rem;
}

.trust-breadcrumb {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.5rem;
    list-style: none;
    padding: 0;
    margin: 0 0 1rem;
    font-size: 0.85rem;
}

    .trust-breadcrumb a {
        color: #4f7cff;
        text-decoration: none;
        font-weight: 600;
    }

    .trust-breadcrumb a:hover {
        text-decoration: underline;
    }

    .trust-breadcrumb .sep {
        color: #9aa5bd;
    }

    .trust-breadcrumb .current {
        color: #5b6680;
    }

.trust-hero h1 {
    font-size: clamp(2rem, 3.6vw, 2.75rem);
    font-weight: 800;
    color: #0e1730;
    margin-bottom: 0.75rem;
}

.trust-hero .trust-lead {
    color: #5b6680;
    font-size: 1.05rem;
    max-width: 60ch;
    margin: 0;
}

.trust-hero-mark {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 88px;
    height: 88px;
    border-radius: 24px;
    background: linear-gradient(135deg, #0e1730 0%, #1a2961 100%);
    color: #fff;
    font-size: 2.4rem;
    box-shadow: 0 24px 48px -20px rgba(14, 23, 48, 0.45);
}

.trust-section {
    padding: 3.5rem 0;
}

.trust-section-alt {
    background: #f6f8fc;
}

.trust-section h2 {
    font-size: 1.6rem;
    font-weight: 800;
    color: #0e1730;
    margin-bottom: 0.5rem;
}

.trust-section h3 {
    font-size: 1.15rem;
    font-weight: 700;
    color: #0e1730;
    margin-bottom: 0.4rem;
}

.trust-eyebrow {
    display: inline-block;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    font-size: 0.78rem;
    font-weight: 700;
    color: #4f7cff;
    margin-bottom: 0.6rem;
}

.trust-prose {
    color: #44506b;
    max-width: 72ch;
}

    .trust-prose p {
        margin-bottom: 1rem;
    }

/* -------- Card grid (Exact-style: icon + title + text + link) -------- */
.trust-card {
    display: flex;
    gap: 1.15rem;
    height: 100%;
    background: #fff;
    border: 1px solid #e7ecf5;
    border-radius: var(--fluent-radius-xlarge, 12px);
    padding: 1.6rem;
    text-decoration: none;
    color: inherit;
    transition: box-shadow 0.2s ease, transform 0.2s ease, border-color 0.2s ease;
}

    .trust-card:hover {
        border-color: #c9d7f5;
        box-shadow: 0 18px 40px -22px rgba(14, 23, 48, 0.35);
        transform: translateY(-2px);
        color: inherit;
    }

.trust-card-icon {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 52px;
    height: 52px;
    border-radius: var(--fluent-radius-large, 8px);
    background: rgba(79, 124, 255, 0.10);
    color: #4f7cff;
    font-size: 1.5rem;
}

.trust-card h3 {
    font-size: 1.1rem;
    font-weight: 700;
    color: #0e1730;
    margin-bottom: 0.35rem;
}

.trust-card p {
    color: #5b6680;
    font-size: 0.94rem;
    margin-bottom: 0.75rem;
}

.trust-card-link {
    color: #4f7cff;
    font-weight: 600;
    font-size: 0.9rem;
}

/* -------- Document download rows -------- */
.trust-doc {
    display: flex;
    align-items: center;
    gap: 1rem;
    background: #fff;
    border: 1px solid #e7ecf5;
    border-radius: var(--fluent-radius-large, 8px);
    padding: 1.1rem 1.3rem;
    margin-bottom: 0.85rem;
    text-decoration: none;
    color: inherit;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

    .trust-doc:hover {
        border-color: #c9d7f5;
        box-shadow: 0 12px 28px -18px rgba(14, 23, 48, 0.35);
        color: inherit;
    }

.trust-doc-icon {
    flex: 0 0 auto;
    font-size: 1.6rem;
    color: #d9483b;
}

.trust-doc-body {
    flex: 1 1 auto;
}

    .trust-doc-body strong {
        display: block;
        color: #0e1730;
    }

    .trust-doc-body small {
        color: #5b6680;
    }

.trust-doc-action {
    flex: 0 0 auto;
    color: #4f7cff;
    font-weight: 600;
    font-size: 0.9rem;
    white-space: nowrap;
}

/* -------- Sub-processor tables -------- */
.trust-table-wrap {
    overflow-x: auto;
    border: 1px solid #e7ecf5;
    border-radius: var(--fluent-radius-large, 8px);
    background: #fff;
}

.trust-table {
    width: 100%;
    min-width: 900px;
    border-collapse: collapse;
    font-size: 0.88rem;
}

    .trust-table thead th {
        background: #0e1730;
        color: #fff;
        font-weight: 600;
        text-align: left;
        padding: 0.75rem 1rem;
        white-space: nowrap;
    }

    .trust-table tbody td {
        padding: 0.8rem 1rem;
        border-top: 1px solid #eef1f7;
        color: #44506b;
        vertical-align: top;
    }

    .trust-table tbody tr:nth-child(even) {
        background: #fafbfe;
    }

    .trust-table tbody td strong {
        color: #0e1730;
    }

    .trust-table .addr {
        display: block;
        color: #7b869e;
        font-size: 0.82rem;
        margin-top: 0.15rem;
    }

.trust-badge {
    display: inline-block;
    border-radius: 999px;
    padding: 0.2rem 0.65rem;
    font-size: 0.78rem;
    font-weight: 600;
    background: rgba(79, 124, 255, 0.10);
    color: #3a5fd9;
    white-space: nowrap;
}

.trust-badge-neutral {
    background: #eef1f7;
    color: #5b6680;
}

.trust-note {
    color: #7b869e;
    font-size: 0.85rem;
    margin-top: 0.85rem;
}

/* -------- Fact list (security page) -------- */
.trust-facts {
    list-style: none;
    padding: 0;
    margin: 0;
}

    .trust-facts li {
        display: flex;
        gap: 0.85rem;
        padding: 0.85rem 0;
        border-bottom: 1px solid #eef1f7;
    }

    .trust-facts li:last-child {
        border-bottom: none;
    }

    .trust-facts i {
        color: #4f7cff;
        font-size: 1.15rem;
        line-height: 1.5;
    }

    .trust-facts strong {
        display: block;
        color: #0e1730;
    }

    .trust-facts span {
        color: #5b6680;
        font-size: 0.94rem;
    }

/* -------- Long-form legal text (privacy statement) -------- */
.trust-legal h3 {
    margin-top: 1.75rem;
    margin-bottom: 0.5rem;
}

    .trust-legal h3:first-child {
        margin-top: 0;
    }

.trust-legal ul {
    padding-left: 1.15rem;
    margin-bottom: 1rem;
}

    .trust-legal ul li {
        margin-bottom: 0.3rem;
    }

.trust-legal a {
    color: #3a5fd9;
}

/* -------- Side panel with related links -------- */
.trust-aside {
    background: #fff;
    border: 1px solid #e7ecf5;
    border-radius: var(--fluent-radius-large, 8px);
    padding: 1.5rem;
    color: #5b6680;
    font-size: 0.94rem;
}

    .trust-aside ul {
        list-style: none;
        padding: 0;
        margin: 0;
    }

    .trust-aside li {
        border-bottom: 1px solid #eef1f7;
    }

        .trust-aside li:last-child {
            border-bottom: none;
        }

        .trust-aside li a {
            display: block;
            padding: 0.5rem 0;
            color: #3a5fd9;
            text-decoration: none;
            font-weight: 600;
        }

            .trust-aside li a:hover {
                text-decoration: underline;
            }

/* -------- Contact call-out -------- */
.trust-callout {
    background: linear-gradient(135deg, #0e1730 0%, #1a2961 100%);
    color: #fff;
    border-radius: var(--fluent-radius-xlarge, 12px);
    padding: 2rem 2.25rem;
}

    .trust-callout h2 {
        color: #fff;
        margin-bottom: 0.5rem;
    }

    .trust-callout p {
        color: #cbd2e2;
        margin-bottom: 1.25rem;
    }

    .trust-callout a.btn {
        background: #fff;
        color: #0e1730;
        border: none;
        font-weight: 600;
    }

        .trust-callout a.btn:hover {
            background: #e7ecf5;
            color: #0e1730;
        }

@media (max-width: 767.98px) {
    .trust-hero {
        padding: 2.25rem 0 2.5rem;
    }

    .trust-card {
        flex-direction: column;
        gap: 0.9rem;
    }
}
