:root {
            --ink: #24323a;
            --muted: #56656d;
            --blue: #245f7a;
            --blue-dark: #17465c;
            --blue-pale: #eef5f7;
            --line: #cbd8dd;
            --line-strong: #9db4bd;
            --gold: #c99335;
            --paper: #ffffff;
            --section: #f7f9fa;
            --footer: #111111;
        }

        * { box-sizing: border-box; margin: 0; padding: 0; }

        body {
            background: var(--paper);
            color: var(--ink);
            font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
            line-height: 1.6;
        }

        img { display: block; max-width: 100%; }

        a { color: var(--blue); text-underline-offset: 3px; }





        /* =========================================
   Shared Page Structure
   ========================================= */

.page {
    padding: 58px 40px;
    border-bottom: 1px solid var(--line);
}

.container,
.content-container {
    max-width: 1120px;
    margin: 0 auto;
}

.content-narrow {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
}

/* =========================================
   Shared Typography
   ========================================= */

.page-title,
.section-heading {
    color: #0c2e62;
    font-family: Georgia, "Times New Roman", serif;
    font-weight: 500;
    line-height: 1.15;
}

.page-title {
    margin-bottom: 34px;
    font-size: 46px;
}

.page-title.center {
    text-align: center;
}

.section-heading {
    max-width: 760px;
    margin-bottom: 14px;
    font-size: 38px;
}

.subsection-heading {
    margin: 44px 0 10px;
    color: var(--ink);
    font-size: 22px;
    font-weight: 700;
    line-height: 1.3;
}

.eyebrow {
    margin-bottom: 12px;
    color: var(--blue);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .11em;
    text-transform: uppercase;
}

.section-intro {
    max-width: 720px;
    margin-bottom: 34px;
    color: var(--muted);
    font-size: 18px;
}

.prose p {
    margin-bottom: 16px;
    color: var(--muted);
    font-size: 16px;
    line-height: 1.6;
}

.prose ul,
.prose ol {
    margin: 12px 0 20px 24px;
    color: var(--muted);
}

.prose li {
    margin-bottom: 5px;
}

.prose > section + section {
    margin-top: 52px;
}

/* =========================================
   Shared Components
   ========================================= */
.back-link {
    display: inline-block;
    margin-bottom: 8px;
    color: var(--blue);
    font-size: 18px;
    text-decoration: underline;
    text-underline-offset: 4px;
}


.button-primary {
    display: inline-block;
    padding: 12px 21px;
    border: 1px solid var(--blue-dark);
    border-radius: 4px;
    background: var(--blue-dark);
    color: white;
    font-size: 16px;
    font-weight: 700;
    text-decoration: none;
}

.button-primary:hover {
    background: #103a4d;
}

.button-primary.is-disabled,
.button-primary.is-disabled:hover {
    border-color: #8f9ca5;
    background: #8f9ca5;
    color: #f4f6f7;
    cursor: not-allowed;
    opacity: 0.7;
}

.platform-note {
    color: var(--blue);
    font-size: 14px;
    font-weight: 600;
}

.card {
    background: white;
    border: 1px solid var(--line-strong);
    border-radius: 4px;
}

.text-link {
    color: var(--blue);
    font-weight: 700;
}

@media (max-width: 700px) {
    .page {
        padding: 42px 20px;
    }

    .page-title {
        font-size: 38px;
    }

    .section-heading {
        font-size: 32px;
    }

    .subsection-heading {
        font-size: 20px;
    }
}
