/* The FAQ canvas is shared by public pages; cards and banners keep their own surfaces. */
:root { --jf-canvas:#f5f8fa; --jf-yellow-soft:#fff8d8; --jf-yellow-ink:#766122; --jf-sky-soft:#eaf7fd; --jf-blue-ink:#174a65; }
body.jf-public-page main,
body.jf-about-page,
body.jf-about-page :is(.site-shell, .site-shell main, .principles, .values),
body.jf-programme-page,
body.jf-programme-page main.shell,
body.jf-public-page :is(.j-partners, .j-landmarks, .j-story-section),
body.jf-public-page .jf-menu-pourquoi :is(.reasons-section, .faq-section) {
    background:var(--jf-canvas);
}

/* Text formerly displayed directly on dark page backgrounds. */
body.jf-public-page .cf-form-panel,
body.jf-public-page .cf-form-panel h1,
body.jf-public-page .cf-field label,
body.jf-public-page .pp-page,
body.jf-public-page .pp-page .pp-hero h1,
body.jf-public-page .pp-page .pp-heading h2 { color:#0b1f35; }
body.jf-public-page :is(.cf-form-lead, .cf-privacy, .pp-hero p, .pp-heading p) { color:#5f6f82; }
body.jf-public-page :is(.cf-eyebrow, .cf-required, .cf-privacy a, .pp-kicker),
body.jf-public-page .pp-hero .pp-secondary { color:#2855a0; }
body.jf-public-page .cf-field-error { color:#a32d25; }
body.jf-public-page .pp-hero .pp-secondary { border-color:#b6cbd6; }

body.jf-programme-page { color:#0b1f35; --text:#0b1f35; }
body.jf-programme-page main.shell { --green:#187853; --blue:#2855a0; --orange:#8a5d16; --magenta:#875298; --cyan:#167585; --lime:#8a5d16; }
body.jf-programme-page :is(.heading h1, .day-number, .day-month, .event h2) { color:#0b1f35; }
body.jf-programme-page :is(.heading p, .heading .edition, .day-meta, .event-meta, .event-description, .footer, .source-note, .empty-programme) { color:#5f6f82; }
body.jf-programme-page :is(.programme-days a, .capacity) { color:#344e62; border-color:#cfdae3; }
body.jf-programme-page .programme-days a:hover { background:#eaf7fd; }
body.jf-programme-page .day-pill { background:#dff3fc; color:#174a65; }
body.jf-programme-page .day-group { border-color:#dfe8ef; }
body.jf-programme-page .agenda { border-color:#cfdae3; }
body.jf-programme-page .event { border-color:#dfe8ef; }
body.jf-programme-page .event::before { border-color:#f5f8fa; }
body.jf-programme-page .day-note { background:#fff8d8; color:#725315; }
body.jf-programme-page :is(.agenda-add, .event-actions a) { color:#174a65; }

/* Small yellow number tiles and blue labels echo the mission section across public pages. */
body.jf-public-page :is(.j-stat strong, .pd-summary-card strong, .ins-metric strong, .stat strong, .hero-stat strong) {
    display:table;
    width:fit-content;
    padding:8px 12px;
    margin-bottom:8px;
    border-radius:12px;
    background:var(--jf-yellow-soft);
    color:var(--jf-yellow-ink);
}
body.jf-public-page :is(.j-profile .j-icon-box, .jf-menu-faq .q-mark, .jf-menu-pourquoi .reason-no b, .jf-menu-gouvernance .person-no, .pp-popular-label),
body.jf-programme-page .day-pill {
    background:var(--jf-yellow-soft);
    color:var(--jf-yellow-ink);
}
body.jf-public-page :is(.pd-level, .ins-objective-icon, .ins-metric .ins-metric-ico, .jf-menu-pourquoi .audience-card .audience-icon, .jf-menu-pourquoi .feature-list li, .jf-menu-gouvernance .person-badge),
body.jf-programme-page :is(.capacity, .agenda-add) {
    background:var(--jf-sky-soft);
    color:var(--jf-blue-ink);
    border-color:#cfe5ef;
}
body.jf-public-page .ins-metric svg { stroke:var(--jf-blue-ink); }
body.jf-public-page :is(.j-kicker, .ne-kicker, .pp-kicker, .cf-eyebrow),
body.jf-public-page .pd-hero .pd-eyebrow {
    display:inline-flex;
    align-items:center;
    width:fit-content;
    padding:7px 12px;
    border-radius:999px;
    background:var(--jf-sky-soft);
    color:var(--jf-blue-ink);
}
body.jf-public-page .ne-meta { padding:6px 10px; border-radius:8px; background:var(--jf-yellow-soft); color:var(--jf-yellow-ink); }
body.jf-public-page .ne-side-card { background:var(--jf-sky-soft); border-color:#70c3ee; }
body.jf-public-page .ne-side-card:nth-child(even) { background:var(--jf-yellow-soft); border-color:var(--jf-yellow,#f5c518); }
body.jf-public-page .cf-submit { background:var(--jf-yellow-soft); color:var(--jf-yellow-ink); border-color:var(--jf-yellow,#f5c518); }
body.jf-public-page .cf-submit:hover { background:var(--jf-yellow-hover,#dfb00a); }
