/*
 * Module purpose: present ownership, policy, contact, and map-source pages as calm editorial reference material.
 * Main logic: use a compact map-backed heading, an answer-first summary band, and a two-column reading layout with a sticky contents list.
 * Cautions: policy text remains ordinary static HTML, readable without animation, and avoids decorative cards or oversized marketing type.
 * Interactions: build_trust_pages supplies semantic classes while guides.css and guides_content.css provide shared type and navigation.
 */
.trust_main {
    background: var(--paper);
}

.trust_hero {
    position: relative;
    isolation: isolate;
    min-height: 430px;
    display: flex;
    align-items: flex-end;
    overflow: hidden;
    padding: 92px max(22px, calc((100vw - var(--content_width)) / 2)) 60px;
    color: #fff;
    background: #13211b url("./world_map_cover.png?v=20260724_4") center 47% / cover no-repeat;
}

.trust_hero::before {
    content: "";
    position: absolute;
    z-index: -1;
    inset: 0;
    background: rgba(10, 18, 14, 0.74);
}

.trust_hero_copy {
    width: min(900px, 100%);
}

.trust_hero h1 {
    max-width: 880px;
    font-size: 54px;
    line-height: 1.08;
}

.trust_owner {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 22px;
    margin: 28px 0 0;
    color: rgba(255, 255, 255, 0.68);
    font-size: 12px;
}

.trust_summary {
    display: grid;
    grid-template-columns: 180px minmax(0, 820px);
    gap: 42px;
    justify-content: center;
    padding: 42px max(22px, calc((100vw - var(--content_width)) / 2));
    background: #eef4f1;
    border-bottom: 1px solid var(--line);
}

.trust_summary .section_kicker {
    padding-top: 5px;
}

.trust_summary > p:last-child {
    margin: 0;
    color: var(--ink_soft);
    font: 22px/1.62 "Iowan Old Style", "Noto Serif SC", "Source Han Serif SC", "Songti SC", Georgia, serif;
}

.trust_layout {
    max-width: 1080px;
    display: grid;
    grid-template-columns: 250px minmax(0, 730px);
    gap: 76px;
    margin: 0 auto;
    padding: 68px 22px 104px;
}

.trust_toc {
    position: sticky;
    top: 92px;
    align-self: start;
    padding-top: 4px;
    border-top: 1px solid var(--line_dark);
}

.trust_toc strong {
    display: block;
    padding: 13px 0 9px;
    color: var(--ink);
    font-size: 12px;
    text-transform: uppercase;
}

.trust_toc a {
    display: block;
    padding: 7px 0;
    color: var(--muted);
    text-decoration: none;
    font-size: 13px;
    line-height: 1.45;
}

.trust_toc a:hover {
    color: var(--green_dark);
}

.trust_article {
    min-width: 0;
    font-size: 16px;
}

.trust_section {
    scroll-margin-top: 90px;
}

.trust_section + .trust_section {
    margin-top: 48px;
    padding-top: 42px;
    border-top: 1px solid var(--line);
}

.trust_section h2 {
    max-width: 690px;
    margin: 0 0 16px;
    font-size: 30px;
    line-height: 1.24;
}

.trust_section p {
    margin: 0 0 16px;
    color: var(--ink_soft);
}

.trust_section strong {
    color: var(--ink);
}

.inline_command {
    display: inline-block;
    margin-top: 5px;
    font-weight: 750;
}

@media (max-width: 850px) {
    .trust_summary {
        grid-template-columns: minmax(0, 1fr);
        gap: 8px;
    }

    .trust_layout {
        grid-template-columns: minmax(0, 1fr);
        gap: 36px;
    }

    .trust_toc {
        position: static;
        columns: 2;
        column-gap: 28px;
    }

    .trust_toc strong {
        column-span: all;
    }
}

@media (max-width: 600px) {
    .trust_hero {
        min-height: 390px;
        padding: 82px 20px 42px;
    }

    .trust_hero h1 {
        font-size: 38px;
    }

    .trust_hero .lead {
        font-size: 16px;
    }

    .trust_summary {
        padding: 34px 20px;
    }

    .trust_summary > p:last-child {
        font-size: 19px;
    }

    .trust_layout {
        padding: 48px 20px 76px;
    }

    .trust_toc {
        columns: 1;
    }

    .trust_section h2 {
        font-size: 26px;
    }
}
