@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700&display=swap');
.fess-shell,.fess-shell *{box-sizing:border-box}
.fess-shell{--fess-green:#16782F;--fess-blue:#0456A2;--fess-orange:#FA8005;max-width:900px;margin:32px auto;padding:clamp(18px,4vw,38px);background:#fff;border:1px solid #e5e9ed;border-radius:16px;box-shadow:0 12px 36px rgba(15,30,45,.07);font-family:'Poppins',sans-serif;color:#17212b}
.fess-heading{text-align:center;margin-bottom:28px}
.fess-kicker{display:inline-block;color:var(--fess-green);font-size:12px;font-weight:600;letter-spacing:1.2px;text-transform:uppercase;margin-bottom:10px}
.fess-heading h2{font-size:clamp(23px,3vw,32px);line-height:1.35;font-weight:500;margin:0 0 10px;color:#111820}
.fess-heading p{margin:0;color:#5c6670;font-size:14px}
.fess-progress{margin:0 0 30px}
.fess-progress-track{height:6px;border-radius:10px;background:#e8edf1;overflow:hidden}
.fess-progress-track span{display:block;width:25%;height:100%;background:var(--fess-green);transition:width .2s ease}
.fess-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:12px}
.fess-steps span{font-size:12px;color:#75808a;text-align:center}
.fess-steps span.is-active{color:var(--fess-green);font-weight:600}
.fess-panel[hidden],[data-other-wrap][hidden]{display:none!important}
.fess-panel h3{font-size:20px;line-height:1.4;font-weight:500;margin:0 0 20px}
.fess-info,.fess-warning{border-radius:10px;padding:18px 20px;margin-bottom:22px;font-size:14px;line-height:1.8}
.fess-info{background:#f5f8fb;border:1px solid #e0e8ef}
.fess-info p{margin:0 0 12px}.fess-info p:last-child{margin-bottom:0}.fess-info ul{margin:0 0 12px;padding-left:22px}
.fess-warning{background:#fff6e9;border:1px solid #f3d5ad;border-left:4px solid var(--fess-orange);color:#55370e}
.fess-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 20px}
.fess-form-grid>label{display:block;min-width:0;font-size:13px;font-weight:500;color:#27333e}
.fess-shell input:not([type=checkbox]):not([type=radio]),.fess-shell select{display:block;width:100%;min-height:46px;margin-top:7px;padding:11px 12px;border:1px solid #ccd4dc;border-radius:7px;background:#fff;color:#17212b;font:400 14px 'Poppins',sans-serif;box-shadow:none}
.fess-shell input:focus,.fess-shell select:focus{outline:2px solid rgba(4,86,162,.17);border-color:var(--fess-blue)}
.fess-shell input[type=file]{padding:9px;font-size:12px}
.fess-shell small{display:block;margin-top:7px;color:#68737e;font-size:12px;line-height:1.6;font-weight:400}
.fess-fieldset{border:1px solid #e0e6eb;border-radius:10px;padding:17px 18px;margin:24px 0 0}
.fess-fieldset legend{padding:0 7px;font-size:15px;font-weight:600}
.fess-fieldset>p{font-size:14px;line-height:1.7}
.fess-radio{display:flex;align-items:flex-start;gap:10px;margin:12px 0;font-size:14px;line-height:1.6}
.fess-radio input,.fess-checkline input{margin-top:4px;flex:0 0 auto;accent-color:var(--fess-green);width:17px;height:17px}
.fess-checkline{display:flex;align-items:flex-start;gap:11px;padding:15px 16px;border:1px solid #e0e6eb;border-radius:9px;background:#fff;font-size:14px;line-height:1.7}
.fess-panel>.fess-checkline{margin-top:18px}
.fess-consents{display:grid;gap:12px}
.fess-consents strong{font-weight:600}
.fess-error{display:block;min-height:0;color:#b42318;font-size:12px;font-weight:400;margin-top:5px}
.fess-error:not(:empty){min-height:16px}
.fess-invalid{border-color:#b42318!important;background:#fffafa!important}
.fess-file-name{display:block;margin-top:7px;color:#4f5c68;font-size:12px;overflow-wrap:anywhere}
.fess-actions{display:flex;align-items:center;gap:12px;margin-top:28px;padding-top:22px;border-top:1px solid #e7ebef}
.fess-actions-spacer{flex:1}
.fess-btn{min-height:46px;border:0;border-radius:7px;padding:12px 20px;font:500 14px 'Poppins',sans-serif;cursor:pointer;transition:background .2s ease,transform .2s ease}
.fess-btn-primary{background:var(--fess-green);color:#fff}
.fess-btn-primary:hover{background:#105f25}
.fess-btn-secondary{background:#eef2f5;color:#263440}
.fess-btn-secondary:hover{background:#e0e7ec}
.fess-btn:disabled{opacity:.55;cursor:not-allowed}
.fess-required-note{margin:16px 0 0;color:#6c7781;font-size:12px;line-height:1.7}
.fess-form-alert,.fess-alert{margin-top:15px;color:#9f1c16;font-size:13px}
.fess-trap{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.fess-confirmation{padding:clamp(20px,4vw,40px);border:1px solid #d8e9dc;border-radius:12px;background:#f8fcf8;line-height:1.85;font-size:14px}
.fess-confirmation h2{font-size:clamp(22px,3vw,30px);font-weight:500;line-height:1.35;color:#14221a;margin:0 0 20px}
.fess-check{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#e0f2e4;color:var(--fess-green);font-size:25px;margin-bottom:16px}
.fess-code{padding:12px 14px;border-radius:7px;background:#edf5ef}
@media(max-width:600px){.fess-shell{margin:18px 10px;padding:18px 14px;border-radius:11px}.fess-steps{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:9px}.fess-steps span{text-align:left}.fess-form-grid{grid-template-columns:1fr;gap:15px}.fess-panel h3{font-size:18px}.fess-info,.fess-warning{padding:15px;font-size:13px}.fess-actions{flex-wrap:wrap}.fess-btn{flex:1;padding:12px 10px}.fess-actions-spacer{display:none}.fess-checkline{font-size:13px;padding:13px}.fess-fieldset{padding:14px 12px}}
@media(prefers-reduced-motion:reduce){.fess-shell *{transition:none!important}}

/* Version 3.1.0 — avertissement e-mail et conservation du code participant */
.fess-email-warning{display:block;margin:0 0 22px;padding:13px 15px;border:1px solid #f0b8b8;border-left:5px solid #D32F2F;border-radius:7px;background:#fff5f5;color:#D32F2F;font-size:14px;line-height:1.6;font-weight:500;text-align:left}
.fess-email-warning strong{font-weight:700}
.fess-code{padding:16px;border-radius:8px;background:#edf5ef;border:1px solid #c9dfcf;overflow-wrap:anywhere}
.fess-code-instruction{margin:8px 0 12px;color:#26352a;font-weight:500}
.fess-copy-code{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:9px 15px;border:0;border-radius:6px;background:#0456A2;color:#fff;font:inherit;font-weight:600;cursor:pointer}
.fess-copy-code:hover,.fess-copy-code:focus{background:#03427b;color:#fff}
@media(max-width:600px){.fess-email-warning{font-size:13px;padding:11px 12px}.fess-copy-code{width:100%}}
