/* Shared JEFIE design tokens; these rules never reach the navigation or footer. */
.jf-menu-content { --ink:var(--jf-ink); --ink-soft:var(--jf-muted); --muted:var(--jf-muted); --paper:var(--jf-canvas); --line:var(--jf-line); --navy:var(--jf-navy); --accent:var(--jf-blue); line-height:1.55; }
.jf-menu-content *, .jf-menu-content *::before, .jf-menu-content *::after { box-sizing:border-box; }
.jf-menu-content .button { border-radius:999px; border-color:#87c9e7; background:#dff3fc; color:#0c3850; }
.jf-menu-content .button:hover { background:#c6eafb; color:#062a40; }
.jf-menu-content .button-outline { background:transparent; border-color:#b6cbd6; color:var(--jf-ink); }
.jf-menu-content .button-light { background:#fff; color:#174a65; }
.jf-menu-content :is(.eyebrow, .audience-icon, .reason-no, .mission-label) { color:var(--jf-blue); }
.jf-menu-content .hero .eyebrow, .jf-menu-content :is(.hero-note-label, .hero h1 em, .hero-stat strong) { color:var(--jf-sky); }
.jf-menu-content :is(.hero-note, .hero-aside, .event-card, .faq-aside, .help-card, .final-cta) .eyebrow { color:var(--jf-sky); }
.jf-menu-content :is(input, button, summary, a):focus-visible { outline:3px solid var(--jf-sky); outline-offset:3px; }
.jf-menu-content :is(.filter-button, .category-button)[aria-pressed="true"] { background:var(--jf-navy); border-color:var(--jf-navy); color:#fff; }
.jf-menu-content .hidden { display:none!important; }
.jf-menu-content [id] { scroll-margin-top:100px; }
.jf-menu-content .answer-copy { white-space:pre-line; overflow-wrap:anywhere; }
.jf-menu-gouvernance .person-visual { height:290px; background:var(--jf-sky-soft); }
.jf-menu-gouvernance .person-visual::before { content:none; }
.jf-menu-gouvernance .person-card[data-category="comite"] .person-visual { background:var(--jf-sky-soft); }
.jf-menu-gouvernance .person-photo { display:block; width:100%; height:100%; object-fit:cover; object-position:center 20%; }
.jf-menu-gouvernance .person-no { padding:3px 7px; border-radius:5px; color:var(--jf-navy); background:rgba(255,255,255,.9); }
@media(max-width:760px) { .jf-menu-gouvernance .person-photo { object-fit:contain; object-position:center; } }
@media(max-width:480px) {
.jf-menu-gouvernance .person-card { grid-template-columns:minmax(0,1fr); }
.jf-menu-gouvernance .person-visual { height:270px; }
}

.jf-menu-pourquoi .audience-card .audience-icon { color:var(--jf-blue); background:var(--jf-sky-soft); }
