/* Brand yellow sampled from the approved participation reference. */
:root{
    --jf-yellow:#f5c518!important;
    --jf-yellow-hover:#dfb00a;
    --jf-green-on-dark:#55d991;
    --jf-yellow-soft:#fff3bf!important;
    --jf-yellow-ink:#071a2c!important;
    --gold:var(--jf-yellow)!important;
    --gold-soft:var(--jf-yellow-soft)!important;
    --jx-yellow:var(--jf-yellow)!important;
    --jx-yellow-soft:var(--jf-yellow-soft)!important;
}

/* Primary actions use navy text for contrast against the yellow. */
body :is(.j-btn,.jx-btn,.ins-btn-primary,.pd-btn-primary,.pp-primary,.pp-button-primary,.pp-button:not(.pp-secondary),.btn-submit,.btn-gold,.btn-inscr,.primary-action,.cf-submit):not(.j-btn-secondary):not(.is-ghost):not(.is-danger),
body .j-hero .j-hero-actions .j-btn:not(.j-btn-secondary),
body.jf-auth-body .auth-main #btnLogin,
body.jf-registration-body .auth-main :is(.btn-primary,.btn-otp-primary),
body.jf-auth-body .auth-main :is(.jf-btn-reset,.jf-btn-submit,.auth-submit),
body.jf-mfa-body .mfa-panel button.mfa-verify,
body .jxg-card .jxg-btn.is-main{
    background:var(--jf-yellow)!important;
    border-color:var(--jf-yellow)!important;
    color:#071a2c!important;
}
body :is(.j-btn,.jx-btn,.ins-btn-primary,.pd-btn-primary,.pp-primary,.pp-button-primary,.pp-button:not(.pp-secondary),.btn-submit,.btn-gold,.btn-inscr,.primary-action,.cf-submit):not(.j-btn-secondary):not(.is-ghost):not(.is-danger):hover,
body .j-hero .j-hero-actions .j-btn:not(.j-btn-secondary):hover,
body.jf-auth-body .auth-main #btnLogin:hover,
body.jf-registration-body .auth-main :is(.btn-primary,.btn-otp-primary):hover,
body.jf-auth-body .auth-main :is(.jf-btn-reset,.jf-btn-submit,.auth-submit):hover,
body.jf-mfa-body .mfa-panel button.mfa-verify:hover,
body .jxg-card .jxg-btn.is-main:hover{
    background:var(--jf-yellow-hover)!important;
    border-color:var(--jf-yellow-hover)!important;
    color:#071a2c!important;
}

/* Dark cards follow the reference: quiet blue tile, clearly visible yellow icon. */
body.jf-public-page .j-profile .j-icon-box,
body .jf-menu-pourquoi .audience-card .audience-icon{
    background:#263f60!important;
    border:1px solid #3b5474!important;
    color:var(--jf-yellow)!important;
}
body .j-profile .j-icon-box svg,
body .jf-menu-pourquoi .audience-card .audience-icon svg{color:inherit;stroke:currentColor}
body .j-profile :is(.j-profile-label,.j-text-link){color:var(--jf-yellow)}
body .j-profile .j-text-link:hover{color:#ffe075}
body .j-profile:hover{border-color:var(--jf-yellow)}
body .j-hero h1 span,
body .j-hero .j-eyebrow{color:var(--jf-green-on-dark)}
body .j-landmark-date strong,
body .j-landmark-profiles>strong,
body .j-landmark-city h3 span,
body .j-landmark-city .j-city-route{color:var(--jf-yellow)}
body .jx-nav-item.is-active{box-shadow:inset 3px 0 0 var(--jf-yellow)}
body .jx-nav-item.is-active svg{color:var(--jf-yellow)}
body .jx-hero .jx-badge.is-yellow,
body .jx-stat.is-yellow .jx-stat-icon,
body.jf-public-page :is(.j-stat strong,.pd-summary-card strong,.ins-metric strong,.stat strong,.hero-stat strong){background:var(--jf-yellow);color:#071a2c}

/* Accents on navy surfaces, including login, MFA and footer. */
body :is(.auth-heading .eyebrow,.aside-kicker,.mfa-aside-label,.mfa-panel .mfa-eyebrow){color:var(--jf-yellow)}
body .mfa-panel .mfa-account{border-left-color:var(--jf-yellow)}
body .mfa-panel .mfa-manual code{color:var(--jf-yellow)}
body.jf-auth-body .auth-main :is(.jf-forgot-link,.jf-inscription-link a){color:var(--jf-yellow)!important}
body .j-header .j-mobile-socials a:hover,
body .j-footer .j-socials a:hover{border-color:var(--jf-yellow);color:var(--jf-yellow)}
body .j-footer a:hover{color:var(--jf-yellow)}
body .j-footer .j-footer-info svg{color:var(--jf-yellow)}
body .j-hero-note .j-dot{background:var(--jf-green-on-dark);box-shadow:0 0 0 5px rgb(85 217 145 / .16)}

/* Preserve secondary, destructive and status actions; give brand actions a visible focus ring. */
body :is(.j-btn,.jx-btn,.ins-btn-primary,.pd-btn-primary,.cf-submit,.jxg-btn.is-main,.mfa-verify):focus-visible{outline:3px solid var(--jf-yellow);outline-offset:4px}
