html{background:#081225!important}
body.jf-auth-body,body.jf-registration-body{padding:32px!important;display:grid;place-items:center;background:#081225!important;color:#f5f7fb;font-family:Arial,Helvetica,sans-serif!important}
.auth-brand img{object-fit:contain}
.auth-brand-link{border-radius:12px;transition:opacity .2s ease,transform .2s ease;outline:none}
.auth-brand-link:hover{opacity:.92;transform:translateY(-1px)}
.auth-brand-link:focus-visible{outline:2px solid var(--jf-yellow,#f5c518);outline-offset:5px}
.auth-main-header{justify-content:flex-end}
.auth-home-return{margin-top:26px;padding-top:20px;border-top:1px solid #2a3b59;text-align:center}
.auth-home-return a{color:#aebbd1;font-size:12px;text-underline-offset:4px}
.auth-home-return a:hover{color:#f5f7fb;text-decoration:underline}
body.jf-auth-body,body.jf-registration-body{display:flow-root!important;padding:0!important}
body:is(.jf-auth-body,.jf-registration-body)>.auth-shell{margin:24px auto;min-width:0}
@media(min-width:901px) and (min-height:651px){
 body:is(.jf-auth-body,.jf-registration-body)>.auth-shell{height:calc(100dvh - 48px);min-height:0;max-height:calc(100dvh - 48px);grid-template-columns:minmax(280px,.86fr) minmax(0,1.14fr)}
 body:is(.jf-auth-body,.jf-registration-body)>.auth-shell>.auth-aside{min-height:0;min-width:0;overflow:clip;justify-content:center;align-items:center;gap:18px;padding:24px 28px;text-align:center}
 body:is(.jf-auth-body,.jf-registration-body)>.auth-shell .auth-brand img{width:100px;height:auto}
 body:is(.jf-auth-body,.jf-registration-body)>.auth-shell .aside-copy{margin:0}
 body:is(.jf-auth-body,.jf-registration-body)>.auth-shell .aside-copy h1{font-size:clamp(26px,2.35vw,34px);line-height:1.08;margin:0 auto 10px;max-width:340px}
 body:is(.jf-auth-body,.jf-registration-body)>.auth-shell .aside-copy>p:last-child{font-size:12px;line-height:1.5;margin-inline:auto;max-width:310px}
 body:is(.jf-auth-body,.jf-registration-body)>.auth-shell .progress-wrap{width:100%;max-width:300px}
 body:is(.jf-auth-body,.jf-registration-body)>.auth-shell .progress-title{font-size:11px;margin:0 0 10px}
 body.jf-registration-body>.auth-shell .stepper-steps{grid-template-columns:1fr;gap:8px}
 body.jf-registration-body>.auth-shell .step-item{min-height:48px;padding:8px 12px;align-items:center}
 body.jf-registration-body>.auth-shell .step-label{font-size:12px}
 body:is(.jf-auth-body,.jf-registration-body)>.auth-shell>.auth-main{min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#38516f transparent;padding:24px clamp(24px,3vw,48px)}
}
.auth-main>.auth-main-header,.auth-main>.page-wrap,.auth-main>.auth-home-return{flex-shrink:0}
body.jf-registration-body .auth-main>.page-wrap{margin:0 auto}
.auth-aside h1{color:#f8faff;font-family:inherit;font-weight:600}
.auth-aside .jf-auth-kicker{display:none}
.auth-main .jf-auth-card{width:100%;max-width:540px;margin:auto;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
.auth-main .jf-title{font-family:inherit!important;font-size:30px!important;font-weight:600!important}
.auth-main .jf-badge-hint{display:none}
.auth-main .jf-auth-event{font-size:11px;color:#c3d0e4}
.mode-tab[aria-current="page"]{background:#eef3ff;color:#0b172d}
.jf-registration-body .page-wrap{width:100%;max-width:540px;padding:0;margin:0 auto;background:transparent!important;box-shadow:none!important}
.jf-registration-body .hero-title{text-align:left;margin:0 0 24px}
.jf-registration-body .hero-title h1{font:600 30px/1.12 Arial,sans-serif!important}
.jf-registration-body .hero-title p{font-size:12px}
.jf-registration-body .card{padding:0;border:0;background:transparent!important;box-shadow:none!important}
.jf-registration-body .card-header{border:0;padding:0;margin-bottom:22px}
.jf-registration-body .card-title{font-size:18px;color:#f8faff!important}
.jf-registration-body .card-subtitle{color:#aebbd1!important;line-height:1.55}
.jf-registration-body .form-grid{gap:15px 13px}
.jf-registration-body .form-control{width:100%;background:#101f39!important;border-radius:10px;color:#f5f7fb!important;font-size:13px}
.jf-registration-body .form-label{color:#e8edf6!important;font-size:12px}
.jf-registration-body .col-full{grid-column:1/-1}
.jf-registration-body .stepper-wrap{padding:0;margin:0;border:0;background:transparent!important;box-shadow:none!important}
.jf-registration-body .stepper-bar{display:none}
.jf-registration-body .stepper-steps{display:grid;gap:9px}
.jf-registration-body .step-item{min-height:62px;display:flex;flex-direction:row;gap:12px;padding:10px 13px;border:1px solid #ffffff20;border-radius:13px;background:#ffffff0c;text-align:left}
.jf-registration-body .step-label{color:#dbe5f5!important;text-transform:none;font-size:13px;letter-spacing:0}
.jf-registration-body .step-num{margin:0;flex:0 0 30px;width:30px;height:30px;border:0;background:#ffffff17!important;color:#f5f8ff!important}
.jf-registration-body .step-item.active{background:#eef4ee}
.jf-registration-body .step-item.active .step-label{color:#101a2a!important}
.jf-registration-body .step-item.active .step-num{background:var(--jf-yellow,#f5c518)!important;color:#1b2230!important;box-shadow:none}
.jf-registration-body .role-title{color:#f4f7fb}.jf-registration-body .role-desc{color:#9eacc1}
.jf-registration-body .roles-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.jf-registration-body .role-card{padding:14px;border-radius:13px}
.jf-registration-body .btn{min-height:48px;height:auto;padding:12px 18px;border-radius:11px;font-size:13px}
.jf-registration-body :is(input,select,textarea):focus{outline:2px solid #a9c2ff;outline-offset:2px}
.jf-registration-body option{background:#101f39;color:#f5f7fb}
.jf-registration-body #btnEnvoyerCode{display:none!important}
.jf-registration-body .email-verification{margin-top:24px;min-width:0}
.is-email-verification .hero-title,
.is-email-verification #etape1 .card-header,
.is-email-verification #etape1 .form-grid,
.is-email-verification #etape1 .btn-group{display:none!important}
.jf-registration-body .is-email-verification .page-wrap{margin-block:auto!important;padding-block:16px}
.jf-registration-body #otpBox{width:100%;max-width:440px;margin:0 auto!important;padding:24px!important;border:1px solid #42608d!important;border-radius:20px!important;background:linear-gradient(150deg,#172c49,#0d1c32)!important;color:#dbe5f5;text-align:center;overflow-wrap:anywhere}
.otp-envelope{display:grid;place-items:center;width:48px;height:48px;margin:0 auto 16px;border:1px solid #82b6e65c;border-radius:16px;background:#70c3ee12;color:#a9dafa}
.otp-envelope svg{width:26px;height:26px}
.jf-registration-body #otpBox .otp-heading{color:#f5f7fb;font-size:22px;line-height:1.25;letter-spacing:-.025em;margin-bottom:10px}
.jf-registration-body #otpBox .otp-description{color:#b9c7dc;font-size:13px;line-height:1.6;margin:0 0 18px}
.jf-registration-body #otpBox .otp-actions{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;min-width:0}
.jf-registration-body #otpBox label{font-size:12px}
.jf-registration-body #email_code{width:100%;min-width:0;height:56px;padding:10px 14px;font:600 24px monospace;letter-spacing:.35em;text-align:center;background:#0b172d!important;border-color:#708db5!important}
.jf-registration-body #otpBox button{min-height:44px!important;height:auto;max-width:100%;white-space:normal;line-height:1.4}
.jf-registration-body #otpBox #btnRenvoyerCode{background:transparent!important;border:0!important;color:#a9c2ff!important}
.jf-registration-body #otpStatus{margin-top:14px;color:#c8ddcd!important;font-size:13px;line-height:1.5;font-weight:400}
.jf-registration-body #otpSuccessBadge{padding:16px;border:1px solid #426552;border-radius:12px;background:#142e2a;color:#bce5cc!important;flex-wrap:wrap}
.jf-registration-body #etape1 .col-full label{color:#b6c2d6!important;line-height:1.6}
.otp-recipient{margin:16px 0 0;font-size:12px;line-height:1.6;color:#91a4be;overflow-wrap:anywhere}
.otp-recipient strong{display:block;color:#e4edf8}
.otp-edit-email{margin-top:16px;padding:8px;background:none;border:0;color:#aebbd1;font-size:12px;text-decoration:underline;text-underline-offset:4px}
.otp-edit-email:focus-visible{outline:2px solid #a9c2ff;outline-offset:4px}
@media(max-width:760px){body.jf-auth-body,body.jf-registration-body{display:block;padding:0!important}.jf-registration-body .stepper-steps{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.jf-registration-body .step-item{flex-direction:column;align-items:flex-start;padding:9px 8px;min-height:0}.jf-registration-body .step-label{font-size:10px}.auth-main .jf-auth-card{margin:0}.auth-main-header{flex-wrap:wrap}.mode-tabs{display:flex!important}.auth-main{padding:22px}.jf-registration-body .hero-title h1{font-size:27px!important}}
@media(max-width:420px){.jf-registration-body .form-grid,.jf-registration-body .roles-grid{grid-template-columns:1fr}.jf-registration-body .col-full{grid-column:auto}}
.jf-registration-body .profile-select-field{margin:26px 0 34px;min-width:0}
.jf-registration-body .profile-select-field label{display:block;margin-bottom:10px;color:#e8f1f6;font-size:14px;font-weight:600}
.jf-registration-body .profile-select-field select{display:block;width:100%;max-width:100%;min-height:52px;padding:13px 40px 13px 16px;border:1px solid #2a3b59;border-radius:12px;background:#0b172d;color:#edf5f8;font:400 16px var(--jf-font-body,'Jost','Segoe UI',sans-serif);cursor:pointer;color-scheme:dark;transition:border-color .2s,box-shadow .2s}
.jf-registration-body .profile-select-field select:hover{border-color:#42577a}
.jf-registration-body .profile-select-field select:focus-visible{outline:0;border-color:#a9c2ff;box-shadow:0 0 0 3px #a9c2ff24}
.jf-registration-body .profile-select-field p{margin:12px 0 0;color:#a7bcc8;font-size:13px;line-height:1.6}
.jf-registration-body #etape2 .profile-continue-actions{display:flex;justify-content:flex-end;margin-top:24px;padding-top:0;border:0}
.jf-registration-body #etape2 .profile-continue{flex:0 0 auto;width:auto;min-height:36px;height:auto;padding:8px 22px;border:1px solid var(--jf-yellow,#f5c518)!important;border-radius:999px;background:var(--jf-yellow,#f5c518)!important;color:#263128!important;font-size:13px;font-weight:600;line-height:1.4;box-shadow:none;transition:background .2s,transform .2s}
.jf-registration-body #etape2 .profile-continue:hover{background:var(--jf-yellow-hover,#dfb00a)!important;transform:translateY(-1px)}
.jf-registration-body #etape2 .profile-continue:focus-visible{outline:2px solid var(--jf-yellow,#f5c518);outline-offset:4px}
@media(pointer:coarse){.jf-registration-body #etape2 .profile-continue{min-height:44px}}
.jf-registration-body .auth-main .btn-group{justify-content:flex-end}
.jf-registration-body .auth-main :is(.btn-primary,.btn-otp-primary){width:auto;min-height:36px!important;height:auto;padding:8px 22px!important;border:1px solid var(--jf-yellow,#f5c518)!important;border-radius:999px!important;background:var(--jf-yellow,#f5c518)!important;color:#263128!important;font-size:13px;font-weight:600;line-height:1.4;box-shadow:none!important}
.jf-registration-body .auth-main :is(.btn-primary,.btn-otp-primary):hover{background:var(--jf-yellow-hover,#dfb00a)!important}
.jf-registration-body .auth-main .btn-defer{border:1px solid #40564d;border-radius:999px;padding:8px 16px;background:transparent!important;color:#bdd8ca!important;font-size:12px}
.jf-registration-body .auth-main .btn-defer svg{display:none}
.jf-registration-body .auth-home-return{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap}
.jf-registration-body .auth-home-return button,.jf-registration-body .auth-home-direct{width:auto;min-height:36px;padding:8px 12px;border:0;background:transparent;color:#aebbd1;font:400 12px var(--jf-font-body,'Jost',sans-serif);cursor:pointer;text-decoration:none}
.jf-registration-body .auth-home-return button:hover{color:var(--jf-yellow,#f5c518)}
.jf-registration-body .auth-home-direct:hover{color:var(--jf-yellow,#f5c518)}
.jf-registration-body .auth-home-direct[hidden]{display:none}
.jf-registration-body .auth-home-return button:focus-visible{outline:2px solid var(--jf-yellow,#f5c518);outline-offset:3px;border-radius:999px}
.jf-registration-body .auth-home-direct:focus-visible{outline:2px solid var(--jf-yellow,#f5c518);outline-offset:3px;border-radius:999px}
@media(pointer:coarse){.jf-registration-body .auth-main :is(.btn-primary,.btn-otp-primary),.jf-registration-body .auth-home-return button{min-height:44px!important}}
body.jf-auth-body .auth-main #loginForm{text-align:right}
body.jf-auth-body .auth-main #loginForm .jf-form-group{text-align:left}
body.jf-auth-body .auth-main #btnLogin{display:inline-flex;width:auto;min-height:36px!important;height:auto;margin:0 0 24px;padding:8px 22px!important;border:1px solid var(--jf-yellow,#f5c518)!important;border-radius:999px!important;background:var(--jf-yellow,#f5c518)!important;color:#263128!important;font-size:13px;font-weight:600;line-height:1.4;box-shadow:none!important}
body.jf-auth-body .auth-main #btnLogin:hover{background:var(--jf-yellow-hover,#dfb00a)!important}
body.jf-auth-body .auth-main #btnLogin:focus-visible{outline:2px solid var(--jf-yellow,#f5c518);outline-offset:4px}
body.jf-auth-body .auth-main #btnLogin:disabled{opacity:.65;cursor:wait;transform:none}
body.jf-auth-body .auth-main :is(.jf-forgot-link,.jf-inscription-link a){color:var(--jf-yellow,#f5c518)!important;font-weight:500}
body.jf-auth-body .auth-main .jf-footer a{display:inline-flex;align-items:center;min-height:36px;padding:8px 12px;color:#aebbd1!important;font-size:12px}
body.jf-auth-body .auth-main .jf-footer a:hover{color:var(--jf-yellow,#f5c518)!important}
@media(pointer:coarse){body.jf-auth-body .auth-main #btnLogin,body.jf-auth-body .auth-main .jf-footer a{min-height:44px!important}}
.auth-mobile-title{display:none}
.jf-registration-body #consentementErreur{color:#f1bdba;font-size:12px;line-height:1.5;margin:10px 0 0}
@media(max-width:767px){
 body:is(.jf-auth-body,.jf-registration-body) .auth-main-header{display:none!important}
 body:is(.jf-auth-body,.jf-registration-body) .auth-shell{min-height:100svh!important;align-content:start;background:#081225!important;box-shadow:none!important}
 body:is(.jf-auth-body,.jf-registration-body) .auth-aside{gap:16px;padding:20px 22px!important;background:#081225!important;border-bottom:1px solid #24394a}
 body:is(.jf-auth-body,.jf-registration-body) .auth-aside::before,body:is(.jf-auth-body,.jf-registration-body) .auth-aside::after{display:none}
 body:is(.jf-auth-body,.jf-registration-body) .aside-copy{display:none}
 body:is(.jf-auth-body,.jf-registration-body) .auth-brand img{width:94px;height:43px}
 body:is(.jf-auth-body,.jf-registration-body) .auth-main{padding:30px 22px 28px!important;background:#081225!important}
 body.jf-auth-body .auth-main .jf-auth-card{max-width:440px;margin:0 auto!important}
 body.jf-auth-body .auth-main .jf-title{text-align:left;font-size:30px!important;line-height:1.2;margin:0 0 12px}
 body.jf-auth-body .auth-main .jf-sub{text-align:left;max-width:340px;margin:0 0 28px;font-size:14px;line-height:1.65}
 body.jf-auth-body .auth-aside .jf-auth-event{display:flex;flex-wrap:wrap;gap:5px 14px;font-size:11px;color:#aebfcb}
 body.jf-registration-body .auth-desktop-title{display:none}
 body.jf-registration-body .auth-mobile-title{display:inline}
 body.jf-registration-body .hero-title{margin-bottom:30px}
 body.jf-registration-body .hero-title h1{font-size:30px!important;line-height:1.2}
 body.jf-registration-body .hero-title p{font-size:12px;line-height:1.7;margin-top:10px}
 body.jf-registration-body .progress-title{font-size:10px;margin:0 0 9px;color:#8eaaa4}
 body.jf-auth-body .auth-main .jf-control,body.jf-registration-body .form-control{min-height:48px;padding:12px 14px}
}

@media(max-width:900px),(max-height:650px){
 body:is(.jf-auth-body,.jf-registration-body)>.auth-shell{width:100%;margin:0;grid-template-columns:minmax(0,1fr);height:auto;max-height:none;min-height:100svh;border:0;border-radius:0;box-shadow:none}
 body:is(.jf-auth-body,.jf-registration-body)>.auth-shell>.auth-aside{min-height:0;overflow:clip;padding:20px!important;gap:16px;align-items:center;justify-content:flex-start;background:#081225!important;border-bottom:1px solid #24394a;text-align:center}
 body:is(.jf-auth-body,.jf-registration-body) .auth-aside::before,body:is(.jf-auth-body,.jf-registration-body) .auth-aside::after,body:is(.jf-auth-body,.jf-registration-body) .aside-copy{display:none}
 body:is(.jf-auth-body,.jf-registration-body) .auth-brand img{width:94px;height:43px}
 body:is(.jf-auth-body,.jf-registration-body) .progress-wrap{width:100%;max-width:540px}
 body.jf-registration-body .stepper-steps{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
 body.jf-registration-body .step-item{min-width:0;min-height:76px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:8px;padding:10px 5px;text-align:center}
 body.jf-registration-body .step-label{font-size:10px;line-height:1.35;overflow-wrap:anywhere}
 body.jf-registration-body .step-num{width:26px;height:26px;flex:0 0 26px;font-size:11px}
 body:is(.jf-auth-body,.jf-registration-body) .auth-main-header{display:none!important}
 body:is(.jf-auth-body,.jf-registration-body)>.auth-shell>.auth-main{min-width:0;min-height:0;overflow:visible;padding:28px clamp(16px,4vw,30px)!important;background:#081225!important}
 body.jf-registration-body .auth-desktop-title{display:none}
 body.jf-registration-body .auth-mobile-title{display:inline}
 body.jf-registration-body .hero-title h1{font-size:28px!important;line-height:1.2}
 body.jf-registration-body .form-control,body.jf-auth-body .jf-control{font-size:16px;min-height:48px}
 body.jf-registration-body .is-email-verification .page-wrap{margin:0 auto!important;padding:0}
 body.jf-registration-body #otpBox{padding:24px 18px!important}
 body.jf-registration-body .auth-home-return{margin-top:22px;padding-top:16px}
 body.jf-registration-body .auth-main :is(.btn-primary,.btn-otp-primary,.btn-defer),body.jf-registration-body .auth-home-return button{min-height:44px!important}
}
