{"id":2,"date":"2026-02-24T17:07:36","date_gmt":"2026-02-24T17:07:36","guid":{"rendered":"http:\/\/boost-levelup.com\/?page_id=2"},"modified":"2026-02-25T01:40:00","modified_gmt":"2026-02-25T01:40:00","slug":"accueil","status":"publish","type":"page","link":"https:\/\/boost-levelup.com\/","title":{"rendered":"Accueil"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"2\" class=\"elementor elementor-2\" data-elementor-settings=\"{&quot;element_pack_global_tooltip_width&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;element_pack_global_tooltip_width_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;element_pack_global_tooltip_width_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;element_pack_global_tooltip_padding&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;top&quot;:&quot;&quot;,&quot;right&quot;:&quot;&quot;,&quot;bottom&quot;:&quot;&quot;,&quot;left&quot;:&quot;&quot;,&quot;isLinked&quot;:true},&quot;element_pack_global_tooltip_padding_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;top&quot;:&quot;&quot;,&quot;right&quot;:&quot;&quot;,&quot;bottom&quot;:&quot;&quot;,&quot;left&quot;:&quot;&quot;,&quot;isLinked&quot;:true},&quot;element_pack_global_tooltip_padding_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;top&quot;:&quot;&quot;,&quot;right&quot;:&quot;&quot;,&quot;bottom&quot;:&quot;&quot;,&quot;left&quot;:&quot;&quot;,&quot;isLinked&quot;:true},&quot;element_pack_global_tooltip_border_radius&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;top&quot;:&quot;&quot;,&quot;right&quot;:&quot;&quot;,&quot;bottom&quot;:&quot;&quot;,&quot;left&quot;:&quot;&quot;,&quot;isLinked&quot;:true},&quot;element_pack_global_tooltip_border_radius_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;top&quot;:&quot;&quot;,&quot;right&quot;:&quot;&quot;,&quot;bottom&quot;:&quot;&quot;,&quot;left&quot;:&quot;&quot;,&quot;isLinked&quot;:true},&quot;element_pack_global_tooltip_border_radius_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;top&quot;:&quot;&quot;,&quot;right&quot;:&quot;&quot;,&quot;bottom&quot;:&quot;&quot;,&quot;left&quot;:&quot;&quot;,&quot;isLinked&quot;:true}}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-9a81a0a e-flex e-con-boxed e-con e-parent\" data-id=\"9a81a0a\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-dc5f6eb elementor-widget elementor-widget-html\" data-id=\"dc5f6eb\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!DOCTYPE html>\n<html lang=\"fr\">\n<head>\n<meta charset=\"UTF-8\">\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n<title>Levelup \u2014 Brief Client<\/title>\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Inter:wght@400;500;600;700;800;900&family=DM+Sans:wght@300;400;500&display=swap\" rel=\"stylesheet\">\n<style>\n  *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }\n\n  :root {\n    --black: #080810;\n    --surface: #0e0e18;\n    --surface-2: #13131f;\n    --border: #1e1e30;\n    --border-hover: #3a3a5c;\n    --accent: #2b7fff;\n    --accent-bright: #4d96ff;\n    --accent-dim: rgba(43,127,255,0.10);\n    --accent-glow: rgba(43,127,255,0.25);\n    --text: #eeeef4;\n    --text-muted: #555570;\n    --text-dim: #8888aa;\n    --radius-sm: 10px;\n    --danger: #ff4d6a;\n    --danger-dim: rgba(255,77,106,0.1);\n  }\n\n  html, body { min-height: 100%; background: var(--black); color: var(--text); font-family: 'DM Sans', sans-serif; font-size: 16px; line-height: 1.6; -webkit-font-smoothing: antialiased; }\n  body { display: flex; flex-direction: column; align-items: center; padding: 48px 20px 64px; }\n\n  body::before { content: ''; position: fixed; inset: 0; background-image: url(\"data:image\/svg+xml,%3Csvg viewBox='0 0 512 512' xmlns='http:\/\/www.w3.org\/2000\/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'\/%3E%3C\/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.025'\/%3E%3C\/svg%3E\"); pointer-events: none; z-index: 0; }\n  body::after { content: ''; position: fixed; top: -300px; left: 50%; transform: translateX(-50%); width: 800px; height: 600px; background: radial-gradient(ellipse, rgba(43,127,255,0.07) 0%, transparent 65%); pointer-events: none; z-index: 0; }\n\n  .wrapper { position: relative; z-index: 1; width: 100%; max-width: 680px; }\n\n  .header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 52px; animation: fadeUp 0.6s ease both; }\n  .logo { font-family: 'Inter', sans-serif; font-weight: 900; font-size: 26px; letter-spacing: -0.5px; color: #fff; text-transform: uppercase; }\n  .step-counter { font-size: 12px; color: var(--text-muted); font-weight: 500; letter-spacing: 1px; text-transform: uppercase; }\n  .step-counter strong { color: var(--text-dim); font-weight: 600; }\n\n  .progress-bar { height: 1px; background: var(--border); border-radius: 99px; margin-bottom: 52px; overflow: visible; position: relative; animation: fadeUp 0.6s ease 0.1s both; }\n  .progress-fill { height: 100%; background: linear-gradient(90deg, #1a5fd4, var(--accent-bright)); border-radius: 99px; transition: width 0.5s cubic-bezier(0.4,0,0.2,1); position: relative; box-shadow: 0 0 16px rgba(43,127,255,0.6); }\n  .progress-fill::after { content: ''; position: absolute; right: -4px; top: 50%; transform: translateY(-50%); width: 8px; height: 8px; border-radius: 50%; background: var(--accent-bright); box-shadow: 0 0 10px var(--accent-bright); }\n\n  .form-card { background: var(--surface); border: 1px solid var(--border); border-radius: 24px; padding: 48px; animation: fadeUp 0.6s ease 0.15s both; box-shadow: 0 0 60px rgba(0,0,0,0.5), inset 0 1px 0 rgba(255,255,255,0.03); }\n\n  .step { display: none; }\n  .step.active { display: block; animation: stepIn 0.4s cubic-bezier(0.4,0,0.2,1) both; }\n\n  @keyframes stepIn { from { opacity: 0; transform: translateX(20px); } to { opacity: 1; transform: translateX(0); } }\n\n  .step-label { font-family: 'Inter', sans-serif; font-size: 10px; font-weight: 700; letter-spacing: 2.5px; text-transform: uppercase; color: var(--accent); margin-bottom: 14px; }\n  .step-title { font-family: 'Inter', sans-serif; font-size: 26px; font-weight: 800; line-height: 1.25; margin-bottom: 8px; color: var(--text); letter-spacing: -0.5px; }\n  .step-desc { font-size: 14px; color: var(--text-muted); margin-bottom: 36px; line-height: 1.7; }\n\n  .field { margin-bottom: 20px; }\n  .field-label { display: block; font-family: 'Inter', sans-serif; font-size: 11px; font-weight: 700; color: var(--text-dim); margin-bottom: 8px; letter-spacing: 0.8px; text-transform: uppercase; }\n\n  input[type=\"text\"], input[type=\"tel\"], textarea, select {\n    width: 100%; background: var(--surface-2); border: 1px solid var(--border); border-radius: var(--radius-sm);\n    color: var(--text); font-family: 'DM Sans', sans-serif; font-size: 15px; padding: 13px 17px;\n    outline: none; box-shadow: none; transition: border-color 0.2s, box-shadow 0.2s, background 0.2s;\n    -webkit-appearance: none; appearance: none;\n  }\n  input[type=\"text\"]::placeholder, input[type=\"tel\"]::placeholder, textarea::placeholder { color: #2a2a3e; }\n  input[type=\"text\"]:focus, input[type=\"tel\"]:focus, textarea:focus, select:focus {\n    outline: none; border-color: var(--accent); background: #0f0f1c; box-shadow: 0 0 0 3px rgba(43,127,255,0.1);\n  }\n  textarea { resize: vertical; min-height: 90px; display: block; line-height: 1.6; outline: none !important; }\n  textarea:not(:focus) { border-color: var(--border) !important; }\n  textarea:focus { border-color: var(--accent) !important; box-shadow: 0 0 0 3px rgba(43,127,255,0.1) !important; }\n\n  .field-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }\n\n  .file-upload-wrapper { position: relative; }\n  .file-upload-label { display: flex; align-items: center; gap: 12px; padding: 14px 18px; background: var(--surface-2); border: 1px dashed var(--border-hover); border-radius: var(--radius-sm); cursor: pointer; transition: all 0.2s; font-size: 14px; color: var(--text-dim); user-select: none; }\n  .file-upload-label:hover { border-color: var(--accent); background: var(--accent-dim); color: var(--text); }\n  .file-upload-name { font-size: 13px; color: var(--accent-bright); margin-top: 6px; display: none; align-items: center; gap: 6px; }\n  .file-upload-name.visible { display: flex; }\n  input[type=\"file\"] { position: absolute; inset: 0; opacity: 0; cursor: pointer; width: 100%; height: 100%; }\n\n  .options-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }\n  .option-card { position: relative; cursor: pointer; }\n  .option-card input[type=\"checkbox\"], .option-card input[type=\"radio\"] { position: absolute; opacity: 0; width: 0; height: 0; }\n  .option-label { display: flex; align-items: center; gap: 10px; padding: 12px 15px; background: var(--surface-2); border: 1px solid var(--border); border-radius: var(--radius-sm); font-size: 13px; color: var(--text-dim); cursor: pointer; transition: all 0.18s; user-select: none; }\n  .option-label:hover { border-color: var(--border-hover); color: var(--text); background: #151525; }\n  .option-check { width: 17px; height: 17px; border: 1.5px solid var(--border-hover); border-radius: 4px; flex-shrink: 0; display: flex; align-items: center; justify-content: center; transition: all 0.18s; }\n  .option-card input:checked + .option-label { border-color: var(--accent); background: var(--accent-dim); color: var(--text); }\n  .option-card input:checked + .option-label .option-check { background: var(--accent); border-color: var(--accent); box-shadow: 0 0 8px var(--accent-glow); }\n  .option-card input:checked + .option-label .option-check::after { content: ''; display: block; width: 4px; height: 8px; border: 2px solid #fff; border-top: none; border-left: none; transform: rotate(45deg) translateY(-1px); }\n  .tone-options { display: flex; flex-direction: column; gap: 8px; }\n\n  .objectif-options { display: flex; flex-direction: column; gap: 10px; }\n  .objectif-card { position: relative; cursor: pointer; }\n  .objectif-card input { position: absolute; opacity: 0; width: 0; height: 0; }\n  .objectif-label { display: block; padding: 18px 20px; background: var(--surface-2); border: 1px solid var(--border); border-radius: var(--radius-sm); cursor: pointer; transition: all 0.18s; }\n  .objectif-label:hover { border-color: var(--border-hover); background: #151525; }\n  .objectif-title { font-family: 'Inter', sans-serif; font-size: 15px; font-weight: 600; color: var(--text); margin-bottom: 4px; display: flex; align-items: center; gap: 10px; }\n  .objectif-dot { width: 16px; height: 16px; border-radius: 50%; border: 1.5px solid var(--border-hover); flex-shrink: 0; transition: all 0.18s; display: flex; align-items: center; justify-content: center; }\n  .objectif-desc { font-size: 13px; color: var(--text-muted); padding-left: 26px; line-height: 1.5; }\n  .objectif-card input:checked + .objectif-label { border-color: var(--accent); background: var(--accent-dim); }\n  .objectif-card input:checked + .objectif-label .objectif-dot { background: var(--accent); border-color: var(--accent); box-shadow: 0 0 8px var(--accent-glow); }\n  .objectif-card input:checked + .objectif-label .objectif-dot::after { content: ''; width: 6px; height: 6px; border-radius: 50%; background: #fff; }\n\n  .offers-list { display: flex; flex-direction: column; gap: 12px; margin-bottom: 12px; }\n  .offer-card { background: var(--surface-2); border: 1px solid var(--border); border-radius: var(--radius-sm); overflow: hidden; animation: cardIn 0.3s cubic-bezier(0.4,0,0.2,1) both; }\n  @keyframes cardIn { from { opacity: 0; transform: translateY(-8px); } to { opacity: 1; transform: translateY(0); } }\n  .offer-card-header { display: flex; align-items: center; justify-content: space-between; padding: 14px 16px; cursor: pointer; user-select: none; transition: background 0.15s; border-bottom: 1px solid var(--border); }\n  .offer-card.collapsed .offer-card-header { border-bottom: none; }\n  .offer-card-header:hover { background: #161626; }\n  .offer-card-title { font-family: 'Inter', sans-serif; font-size: 14px; font-weight: 600; color: var(--text); }\n  .offer-card-title.placeholder { color: var(--text-muted); }\n  .offer-card-actions { display: flex; align-items: center; gap: 8px; }\n  .offer-toggle-icon { color: var(--text-muted); transition: transform 0.2s; display: flex; }\n  .offer-card.collapsed .offer-toggle-icon { transform: rotate(-90deg); }\n  .btn-delete-offer { display: flex; align-items: center; justify-content: center; width: 28px; height: 28px; border-radius: 6px; background: transparent; border: 1px solid transparent; color: var(--text-muted); cursor: pointer; transition: all 0.18s; }\n  .btn-delete-offer:hover { background: var(--danger-dim); border-color: var(--danger); color: var(--danger); }\n  .offer-card-body { padding: 16px; display: flex; flex-direction: column; gap: 12px; }\n  .offer-card.collapsed .offer-card-body { display: none; }\n  .offer-field-row { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }\n  .offer-field label { display: block; font-family: 'Inter', sans-serif; font-size: 10px; font-weight: 700; color: var(--text-muted); margin-bottom: 6px; letter-spacing: 0.8px; text-transform: uppercase; }\n  .offer-field input[type=\"text\"], .offer-field textarea {\n    width: 100%; padding: 13px 17px; font-size: 14px; background: var(--surface); border: 1px solid var(--border);\n    border-radius: var(--radius-sm); color: var(--text); font-family: 'DM Sans', sans-serif; outline: none;\n    box-shadow: none; transition: border-color 0.2s, box-shadow 0.2s, background 0.2s; -webkit-appearance: none; appearance: none;\n  }\n  .offer-field input[type=\"text\"]::placeholder, .offer-field textarea::placeholder { color: #2a2a3e; }\n  .offer-field input[type=\"text\"]:focus, .offer-field textarea:focus { outline: none; border-color: var(--accent); background: #0a0a14; box-shadow: 0 0 0 3px rgba(43,127,255,0.1); }\n  .offer-field textarea { min-height: 80px; resize: vertical; display: block; line-height: 1.6; }\n\n  .certif-list { display: flex; flex-direction: column; gap: 8px; margin-bottom: 10px; }\n  .certif-row { display: flex; align-items: center; gap: 8px; animation: cardIn 0.3s cubic-bezier(0.4,0,0.2,1) both; }\n  .certif-row input[type=\"text\"] { flex: 1; }\n  .btn-remove { display: flex; align-items: center; justify-content: center; width: 40px; height: 46px; flex-shrink: 0; border-radius: var(--radius-sm); background: transparent; border: 1px solid var(--border); color: var(--text-muted); cursor: pointer; transition: all 0.18s; }\n  .btn-remove:hover { background: var(--danger-dim); border-color: var(--danger); color: var(--danger); }\n\n  .btn-add { display: flex; align-items: center; justify-content: center; gap: 8px; padding: 11px 18px; width: 100%; border-radius: var(--radius-sm); border: 1px dashed var(--border-hover); background: transparent; color: var(--text-dim); font-family: 'DM Sans', sans-serif; font-size: 13px; font-weight: 500; cursor: pointer; transition: all 0.2s; }\n  .btn-add:hover { border-color: var(--accent); color: var(--accent-bright); background: var(--accent-dim); }\n\n  .process-list { display: flex; flex-direction: column; gap: 10px; margin-bottom: 12px; }\n  .process-step-card { display: flex; align-items: flex-start; gap: 12px; animation: cardIn 0.3s cubic-bezier(0.4,0,0.2,1) both; }\n  .process-step-left { display: flex; flex-direction: column; align-items: center; flex-shrink: 0; padding-top: 14px; }\n  .process-step-num { width: 28px; height: 28px; border-radius: 50%; background: var(--accent-dim); border: 1px solid rgba(43,127,255,0.25); display: flex; align-items: center; justify-content: center; font-family: 'Inter', sans-serif; font-size: 11px; font-weight: 800; color: var(--accent-bright); flex-shrink: 0; }\n  .process-step-line { width: 1px; flex: 1; min-height: 16px; background: var(--border); margin-top: 6px; }\n  .process-step-body { flex: 1; display: flex; flex-direction: column; gap: 8px; padding-bottom: 4px; }\n  .process-step-body input[type=\"text\"] { font-family: 'Inter', sans-serif; font-size: 12px; font-weight: 700; letter-spacing: 0.5px; text-transform: uppercase; color: var(--text-dim); padding: 10px 14px; background: var(--surface-2); border: 1px solid var(--border); border-radius: var(--radius-sm); }\n  .process-step-body input[type=\"text\"]::placeholder { color: #2a2a3e; }\n  .process-step-body input[type=\"text\"]:focus { border-color: var(--accent); background: #0f0f1c; box-shadow: 0 0 0 3px rgba(43,127,255,0.1); }\n  .process-step-body textarea { font-size: 14px; padding: 13px 17px; background: var(--surface-2); border: 1px solid var(--border); border-radius: var(--radius-sm); min-height: 80px; resize: vertical; }\n  .process-step-body textarea::placeholder { color: #2a2a3e; }\n  .process-step-body textarea:focus { border-color: var(--accent); background: #0f0f1c; box-shadow: 0 0 0 3px rgba(43,127,255,0.1); }\n  .process-step-top { display: flex; align-items: center; gap: 8px; }\n  .process-step-top input[type=\"text\"] { flex: 1; }\n  .btn-remove-step { display: flex; align-items: center; justify-content: center; width: 40px; height: 46px; flex-shrink: 0; border-radius: var(--radius-sm); background: transparent; border: 1px solid var(--border); color: var(--text-muted); cursor: pointer; transition: all 0.18s; }\n  .btn-remove-step:hover { background: var(--danger-dim); border-color: var(--danger); color: var(--danger); }\n\n  .cgv-upload-wrapper { overflow: hidden; max-height: 0; opacity: 0; transition: max-height 0.35s cubic-bezier(0.4,0,0.2,1), opacity 0.25s ease; }\n  .cgv-upload-wrapper.visible { max-height: 200px; opacity: 1; }\n\n  .inspi-row { display: flex; gap: 10px; margin-top: 12px; flex-wrap: wrap; }\n  .btn-inspi { display: inline-flex; align-items: center; gap: 8px; padding: 10px 18px; border-radius: 99px; border: 1px solid var(--border-hover); background: transparent; color: var(--text-dim); font-family: 'DM Sans', sans-serif; font-size: 13px; font-weight: 500; cursor: pointer; text-decoration: none; transition: all 0.2s; }\n  .btn-inspi:hover { border-color: var(--accent); color: var(--accent-bright); background: var(--accent-dim); }\n\n  .section-divider { height: 1px; background: var(--border); margin: 28px 0; }\n\n  .form-nav { display: flex; align-items: center; justify-content: space-between; margin-top: 40px; padding-top: 28px; border-top: 1px solid var(--border); }\n  .btn { display: inline-flex; align-items: center; gap: 8px; padding: 13px 26px; border-radius: var(--radius-sm); font-family: 'DM Sans', sans-serif; font-size: 14px; font-weight: 500; cursor: pointer; border: none; transition: all 0.2s; }\n  .btn-ghost { background: transparent; color: var(--text-muted); border: 1px solid var(--border); }\n  .btn-ghost:hover { border-color: var(--border-hover); color: var(--text-dim); }\n  .btn-primary { background: var(--accent); color: #fff; font-weight: 600; }\n  .btn-primary:hover { background: var(--accent-bright); box-shadow: 0 0 28px var(--accent-glow); transform: translateY(-1px); }\n  .btn-primary:active { transform: translateY(0); box-shadow: none; }\n  .arrow-icon { transition: transform 0.2s; }\n  .btn-primary:hover .arrow-icon { transform: translateX(3px); }\n  .btn-primary.loading { opacity: 0.6; pointer-events: none; }\n  .spinner { width: 15px; height: 15px; border: 2px solid rgba(255,255,255,0.2); border-top-color: #fff; border-radius: 50%; animation: spin 0.7s linear infinite; display: none; }\n  .btn-primary.loading .spinner { display: block; }\n  .btn-primary.loading .btn-label, .btn-primary.loading .arrow-icon { display: none; }\n\n  .success { display: none; text-align: center; padding: 24px 0; }\n  .success.active { display: block; animation: stepIn 0.5s ease both; }\n  .success-icon { width: 72px; height: 72px; background: var(--accent-dim); border: 1px solid rgba(43,127,255,0.3); border-radius: 50%; display: flex; align-items: center; justify-content: center; margin: 0 auto 28px; box-shadow: 0 0 40px rgba(43,127,255,0.2); }\n  .success h2 { font-family: 'Inter', sans-serif; font-size: 24px; font-weight: 800; margin-bottom: 12px; letter-spacing: -0.3px; }\n  .success p { color: var(--text-muted); font-size: 15px; max-width: 400px; margin: 0 auto 24px; line-height: 1.7; }\n  .success-detail { display: inline-flex; align-items: center; gap: 8px; padding: 12px 20px; background: var(--surface-2); border: 1px solid var(--border); border-radius: var(--radius-sm); font-size: 13px; color: var(--text-dim); }\n  .success-detail strong { color: var(--accent-bright); }\n\n  \/* \u2500\u2500\u2500 Erreur \u2500\u2500\u2500 *\/\n  .form-error { display: none; align-items: center; gap: 10px; padding: 14px 18px; background: var(--danger-dim); border: 1px solid rgba(255,77,106,0.3); border-radius: var(--radius-sm); font-size: 13px; color: #ff8096; margin-top: 16px; }\n  .form-error.visible { display: flex; }\n\n  .toast { position: fixed; bottom: 32px; left: 50%; transform: translateX(-50%) translateY(20px); background: #0d1f0d; border: 1px solid #1a3a1a; color: #6ed46e; padding: 14px 24px; border-radius: 99px; font-size: 14px; font-weight: 500; display: flex; align-items: center; gap: 10px; opacity: 0; transition: all 0.4s cubic-bezier(0.4,0,0.2,1); z-index: 100; white-space: nowrap; box-shadow: 0 8px 32px rgba(0,0,0,0.5); pointer-events: none; }\n  .toast.show { opacity: 1; transform: translateX(-50%) translateY(0); }\n\n  .footer { margin-top: 36px; text-align: center; font-size: 11px; color: #1e1e30; letter-spacing: 2px; text-transform: uppercase; animation: fadeUp 0.6s ease 0.3s both; }\n\n  select option { background: #0e0e18; }\n  @keyframes spin { to { transform: rotate(360deg); } }\n  @keyframes fadeUp { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: translateY(0); } }\n\n  @media (max-width: 640px) {\n    body { padding: 28px 16px 48px; }\n    .form-card { padding: 28px 20px; }\n    .step-title { font-size: 21px; }\n    .field-row, .offer-field-row { grid-template-columns: 1fr; }\n    .inspi-row { flex-direction: column; }\n    .btn-inspi { width: 100%; justify-content: center; }\n    .btn { padding: 12px 18px; font-size: 13px; }\n  }\n  @media (max-width: 400px) { .options-grid { grid-template-columns: 1fr; } }\n<\/style>\n<\/head>\n<body>\n<div class=\"wrapper\">\n  <header class=\"header\">\n    <div class=\"logo\">LEVELUP<\/div>\n    <div class=\"step-counter\">\u00c9tape <strong id=\"stepNum\">1<\/strong> \/ <strong>4<\/strong><\/div>\n  <\/header>\n  <div class=\"progress-bar\">\n    <div class=\"progress-fill\" id=\"progressFill\" style=\"width:25%\"><\/div>\n  <\/div>\n\n  <form id=\"mainForm\" enctype=\"multipart\/form-data\">\n  <div class=\"form-card\">\n\n    <!-- STEP 1 -->\n    <div class=\"step active\" id=\"step-1\">\n      <div class=\"step-label\">\u00c9tape 01 \u2014 Documents & structure<\/div>\n      <h2 class=\"step-title\">Ta soci\u00e9t\u00e9 en quelques mots<\/h2>\n      <p class=\"step-desc\">Ces \u00e9l\u00e9ments nous permettent de comprendre ta structure avant de d\u00e9marrer.<\/p>\n\n      <div class=\"field\">\n        <span class=\"field-label\">Kbis *<\/span>\n        <div class=\"file-upload-wrapper\">\n          <label class=\"file-upload-label\" for=\"kbis\">\n            <svg width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\"\/><polyline points=\"17 8 12 3 7 8\"\/><line x1=\"12\" y1=\"3\" x2=\"12\" y2=\"15\"\/><\/svg>\n            <span id=\"kbisLabel\">Importer ton Kbis \u2014 PDF, JPG, PNG (max. 25 Mo)<\/span>\n          <\/label>\n          <input type=\"file\" id=\"kbis\" name=\"kbis\" accept=\".pdf,.jpg,.jpeg,.png\" onchange=\"updateFileName('kbis','kbisLabel','kbisName')\">\n        <\/div>\n        <div class=\"file-upload-name\" id=\"kbisName\">\n          <svg width=\"13\" height=\"13\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><polyline points=\"20 6 9 17 4 12\"\/><\/svg>\n          <span><\/span>\n        <\/div>\n      <\/div>\n\n      <div class=\"field\">\n        <span class=\"field-label\">Structure de l'\u00e9quipe<\/span>\n        <p style=\"font-size:13px;color:var(--text-muted);margin-bottom:12px;line-height:1.6;\">Qui s'occupe de quoi dans ta soci\u00e9t\u00e9 ?<\/p>\n        <div class=\"options-grid\">\n          <label class=\"option-card\"><input type=\"checkbox\" name=\"equipe[]\" value=\"Commerciaux\"><span class=\"option-label\"><span class=\"option-check\"><\/span>Commerciaux<\/span><\/label>\n          <label class=\"option-card\"><input type=\"checkbox\" name=\"equipe[]\" value=\"Juristes\"><span class=\"option-label\"><span class=\"option-check\"><\/span>Juristes<\/span><\/label>\n          <label class=\"option-card\"><input type=\"checkbox\" name=\"equipe[]\" value=\"Consultants\"><span class=\"option-label\"><span class=\"option-check\"><\/span>Consultants<\/span><\/label>\n          <label class=\"option-card\"><input type=\"checkbox\" name=\"equipe[]\" value=\"Assistants administratifs\"><span class=\"option-label\"><span class=\"option-check\"><\/span>Assistants admin.<\/span><\/label>\n          <label class=\"option-card\"><input type=\"checkbox\" name=\"equipe[]\" value=\"Je travaille seule\"><span class=\"option-label\"><span class=\"option-check\"><\/span>Je travaille seule<\/span><\/label>\n          <label class=\"option-card\"><input type=\"checkbox\" name=\"equipe[]\" value=\"Autre\"><span class=\"option-label\"><span class=\"option-check\"><\/span>Autre<\/span><\/label>\n        <\/div>\n      <\/div>\n\n      <div class=\"field\">\n        <span class=\"field-label\">Pr\u00e9cise si besoin (r\u00f4les, organisation\u2026)<\/span>\n        <textarea name=\"equipe_detail\" placeholder=\"Ex : 2 consultants Qualiopi, 1 juriste sp\u00e9cialis\u00e9 en droit de la formation\u2026\"><\/textarea>\n      <\/div>\n\n      <div class=\"field\">\n        <span class=\"field-label\">As-tu des CGV ?<\/span>\n        <div class=\"options-grid\" style=\"grid-template-columns:1fr 1fr;\">\n          <label class=\"option-card\"><input type=\"radio\" name=\"cgv\" id=\"cgvOui\" value=\"Oui\"><span class=\"option-label\"><span class=\"option-check\"><\/span>Oui<\/span><\/label>\n          <label class=\"option-card\"><input type=\"radio\" name=\"cgv\" id=\"cgvNon\" value=\"Non\"><span class=\"option-label\"><span class=\"option-check\"><\/span>Non<\/span><\/label>\n        <\/div>\n        <div class=\"cgv-upload-wrapper\" id=\"cgvWrapper\">\n          <div style=\"margin-top:12px;\">\n            <span class=\"field-label\" style=\"margin-bottom:8px;display:block;\">Partage tes CGV (PDF)<\/span>\n            <div class=\"file-upload-wrapper\">\n              <label class=\"file-upload-label\" for=\"cgvFile\">\n                <svg width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\"\/><polyline points=\"17 8 12 3 7 8\"\/><line x1=\"12\" y1=\"3\" x2=\"12\" y2=\"15\"\/><\/svg>\n                <span id=\"cgvFileLabel\">Importer tes CGV \u2014 PDF uniquement (max. 25 Mo)<\/span>\n              <\/label>\n              <input type=\"file\" id=\"cgvFile\" name=\"cgv_fichier\" accept=\".pdf\" onchange=\"updateFileName('cgvFile','cgvFileLabel','cgvFileName')\">\n            <\/div>\n            <div class=\"file-upload-name\" id=\"cgvFileName\">\n              <svg width=\"13\" height=\"13\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><polyline points=\"20 6 9 17 4 12\"\/><\/svg>\n              <span><\/span>\n            <\/div>\n          <\/div>\n        <\/div>\n      <\/div>\n    <\/div>\n\n    <!-- STEP 2 -->\n    <div class=\"step\" id=\"step-2\">\n      <div class=\"step-label\">\u00c9tape 02 \u2014 Offres & certifications<\/div>\n      <h2 class=\"step-title\">Qu'est-ce que tu proposes ?<\/h2>\n      <p class=\"step-desc\">D\u00e9cris chacune de tes offres \u2014 nom, dur\u00e9e, tarif et ce qu'elle apporte concr\u00e8tement \u00e0 tes clients.<\/p>\n\n      <div class=\"field\">\n        <span class=\"field-label\">Tes offres *<\/span>\n        <div class=\"offers-list\" id=\"offersList\"><\/div>\n        <button class=\"btn-add\" type=\"button\" onclick=\"addOffer()\">\n          <svg width=\"15\" height=\"15\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><line x1=\"12\" y1=\"5\" x2=\"12\" y2=\"19\"\/><line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"\/><\/svg>\n          Ajouter une offre\n        <\/button>\n      <\/div>\n      <textarea name=\"offres\" id=\"offresHidden\" style=\"display:none;\"><\/textarea>\n\n      <div class=\"section-divider\"><\/div>\n\n      <div class=\"field\">\n        <span class=\"field-label\">Certifications accompagn\u00e9es<\/span>\n        <div class=\"certif-list\" id=\"certifList\"><\/div>\n        <button class=\"btn-add\" type=\"button\" onclick=\"addCertif('')\">\n          <svg width=\"15\" height=\"15\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><line x1=\"12\" y1=\"5\" x2=\"12\" y2=\"19\"\/><line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"\/><\/svg>\n          Ajouter une certification\n        <\/button>\n      <\/div>\n      <textarea name=\"certifications\" id=\"certifHidden\" style=\"display:none;\"><\/textarea>\n    <\/div>\n\n    <!-- STEP 3 -->\n    <div class=\"step\" id=\"step-3\">\n      <div class=\"step-label\">\u00c9tape 03 \u2014 Cr\u00e9dibilit\u00e9 & process<\/div>\n      <h2 class=\"step-title\">Tes r\u00e9sultats & ton fonctionnement<\/h2>\n      <p class=\"step-desc\">Ces \u00e9l\u00e9ments montrent comment tu travailles et pourquoi tes clients te font confiance.<\/p>\n\n      <div class=\"field\">\n        <span class=\"field-label\">Nombre de clients accompagn\u00e9s<\/span>\n        <input type=\"text\" name=\"nb_clients\" placeholder=\"Ex : +50 clients\">\n      <\/div>\n      <div class=\"field\">\n        <span class=\"field-label\">Partenaires \/ labels \u00e0 mettre en avant<\/span>\n        <textarea name=\"partenaires\" placeholder=\"Ex : Certifi\u00e9e Qualiopi, partenaire Datadock\u2026\"><\/textarea>\n      <\/div>\n      <div class=\"field\">\n        <span class=\"field-label\">Chiffres cl\u00e9s<\/span>\n        <input type=\"text\" name=\"chiffres_cles\" placeholder=\"Ex : 5 ans d'exp\u00e9rience, +200 certifications obtenues\u2026\">\n      <\/div>\n      <div class=\"field\">\n        <span class=\"field-label\">Comment tes clients te trouvent-ils ?<\/span>\n        <div class=\"options-grid\">\n          <label class=\"option-card\"><input type=\"checkbox\" name=\"acquisition[]\" value=\"Bouche-\u00e0-oreille\"><span class=\"option-label\"><span class=\"option-check\"><\/span>Bouche-\u00e0-oreille<\/span><\/label>\n          <label class=\"option-card\"><input type=\"checkbox\" name=\"acquisition[]\" value=\"LinkedIn\"><span class=\"option-label\"><span class=\"option-check\"><\/span>LinkedIn<\/span><\/label>\n          <label class=\"option-card\"><input type=\"checkbox\" name=\"acquisition[]\" value=\"R\u00e9seaux sociaux\"><span class=\"option-label\"><span class=\"option-check\"><\/span>R\u00e9seaux sociaux<\/span><\/label>\n          <label class=\"option-card\"><input type=\"checkbox\" name=\"acquisition[]\" value=\"Publicit\u00e9 payante\"><span class=\"option-label\"><span class=\"option-check\"><\/span>Publicit\u00e9<\/span><\/label>\n        <\/div>\n      <\/div>\n\n      <div class=\"section-divider\"><\/div>\n\n      <div class=\"field\">\n        <span class=\"field-label\">Ton process de gestion client *<\/span>\n        <p style=\"font-size:13px;color:var(--text-muted);margin-bottom:16px;line-height:1.6;\">D\u00e9cris \u00e9tape par \u00e9tape comment tu accompagnes un client de A \u00e0 Z.<\/p>\n        <div class=\"process-list\" id=\"processList\"><\/div>\n        <button class=\"btn-add\" type=\"button\" onclick=\"addProcessStep()\">\n          <svg width=\"15\" height=\"15\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><line x1=\"12\" y1=\"5\" x2=\"12\" y2=\"19\"\/><line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"\/><\/svg>\n          Ajouter une \u00e9tape\n        <\/button>\n      <\/div>\n      <textarea name=\"process_gestion\" id=\"processHidden\" style=\"display:none;\"><\/textarea>\n\n      <div class=\"section-divider\"><\/div>\n\n      <div class=\"field\">\n        <span class=\"field-label\">Ton mode de vente *<\/span>\n        <div class=\"objectif-options\">\n          <label class=\"objectif-card\">\n            <input type=\"radio\" name=\"mode_vente\" value=\"Offres packag\u00e9es \u2014 vente directe en ligne\">\n            <span class=\"objectif-label\">\n              <span class=\"objectif-title\"><span class=\"objectif-dot\"><\/span>Offres packag\u00e9es \u2014 vente directe<\/span>\n              <span class=\"objectif-desc\">Tes offres ont un prix fixe, tes clients ach\u00e8tent directement depuis le site.<\/span>\n            <\/span>\n          <\/label>\n          <label class=\"objectif-card\">\n            <input type=\"radio\" name=\"mode_vente\" value=\"Sur-mesure \u2014 demande de devis\">\n            <span class=\"objectif-label\">\n              <span class=\"objectif-title\"><span class=\"objectif-dot\"><\/span>Sur-mesure \u2014 demande de devis<\/span>\n              <span class=\"objectif-desc\">Chaque accompagnement est unique. Le site capte des leads et tu proposes un devis.<\/span>\n            <\/span>\n          <\/label>\n          <label class=\"objectif-card\">\n            <input type=\"radio\" name=\"mode_vente\" value=\"Les deux \u2014 offres fixes et sur-mesure\">\n            <span class=\"objectif-label\">\n              <span class=\"objectif-title\"><span class=\"objectif-dot\"><\/span>Les deux \u00e0 la fois<\/span>\n              <span class=\"objectif-desc\">Tu as des offres \u00e0 prix fixe ET des accompagnements sur-mesure.<\/span>\n            <\/span>\n          <\/label>\n        <\/div>\n      <\/div>\n    <\/div>\n\n    <!-- STEP 4 -->\n    <div class=\"step\" id=\"step-4\">\n      <div class=\"step-label\">\u00c9tape 04 \u2014 R\u00e9f\u00e9rences & informations<\/div>\n      <h2 class=\"step-title\">Style & infos<\/h2>\n      <p class=\"step-desc\">Pour que le site te ressemble \u2014 et pour savoir exactement ce que tu dois demander \u00e0 tes futurs clients.<\/p>\n\n      <div class=\"field\">\n        <span class=\"field-label\">Quel ton d\u00e9crit le mieux ta communication ?<\/span>\n        <div class=\"tone-options\">\n          <label class=\"option-card\"><input type=\"radio\" name=\"ton\" value=\"Expert & rassurant\"><span class=\"option-label\"><span class=\"option-check\"><\/span>Expert & rassurant \u2014 Tu inspires confiance par ta rigueur<\/span><\/label>\n          <label class=\"option-card\"><input type=\"radio\" name=\"ton\" value=\"Chaleureux & humain\"><span class=\"option-label\"><span class=\"option-check\"><\/span>Chaleureux & humain \u2014 Tu mets l'\u00e9motion et la relation au centre<\/span><\/label>\n          <label class=\"option-card\"><input type=\"radio\" name=\"ton\" value=\"Dynamique & ambitieux\"><span class=\"option-label\"><span class=\"option-check\"><\/span>Dynamique & ambitieux \u2014 Tu pousses tes clients vers le succ\u00e8s<\/span><\/label>\n          <label class=\"option-card\"><input type=\"radio\" name=\"ton\" value=\"Direct & sans fioritures\"><span class=\"option-label\"><span class=\"option-check\"><\/span>Direct & sans fioritures \u2014 Tu vas droit au but, efficacit\u00e9 avant tout<\/span><\/label>\n        <\/div>\n      <\/div>\n      <div class=\"field\">\n        <span class=\"field-label\">Sites que tu aimes<\/span>\n        <input type=\"text\" name=\"sites_references\" placeholder=\"Ex : shine.fr, legalstart.fr\u2026\">\n        <div class=\"inspi-row\">\n          <a class=\"btn-inspi\" href=\"https:\/\/shine.fr\" target=\"_blank\" rel=\"noopener\">\n            <svg width=\"13\" height=\"13\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6\"\/><polyline points=\"15 3 21 3 21 9\"\/><line x1=\"10\" y1=\"14\" x2=\"21\" y2=\"3\"\/><\/svg>\n            Voir notre inspiration Shine\n          <\/a>\n          <a class=\"btn-inspi\" href=\"https:\/\/legalstart.fr\" target=\"_blank\" rel=\"noopener\">\n            <svg width=\"13\" height=\"13\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6\"\/><polyline points=\"15 3 21 3 21 9\"\/><line x1=\"10\" y1=\"14\" x2=\"21\" y2=\"3\"\/><\/svg>\n            Voir notre inspiration Legalstart\n          <\/a>\n        <\/div>\n      <\/div>\n      <div class=\"field\">\n        <span class=\"field-label\">Ce que tu n'aimes pas<\/span>\n        <textarea name=\"dislikes\" placeholder=\"Trop charg\u00e9, couleurs criardes, froid et institutionnel\u2026\"><\/textarea>\n      <\/div>\n      <div class=\"field\">\n        <span class=\"field-label\">Principaux concurrents<\/span>\n        <input type=\"text\" name=\"concurrents\" placeholder=\"Leurs noms ou sites web\u2026\">\n      <\/div>\n      <div class=\"field\" style=\"margin-top:24px;\">\n        <span class=\"field-label\">Informations compl\u00e9mentaires<\/span>\n        <textarea name=\"complement\" placeholder=\"Tout ce que tu voudrais qu'on sache avant de d\u00e9marrer\u2026\"><\/textarea>\n      <\/div>\n    <\/div>\n\n    <!-- SUCCESS -->\n    <div class=\"success\" id=\"successMsg\">\n      <div class=\"success-icon\">\n        <svg width=\"28\" height=\"28\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#4d96ff\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><polyline points=\"20 6 9 17 4 12\"\/><\/svg>\n      <\/div>\n      <h2 style=\"color:white!important;\">Brief envoy\u00e9 avec succ\u00e8s !<\/h2>\n      <p>Merci pour ta confiance ! Notre \u00e9quipe a bien re\u00e7u l'int\u00e9gralit\u00e9 de ton brief et reviendra vers toi prochainement<\/p>\n      <div class=\"success-detail\">\n        <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M4 4h16c1.1 0 2 .9 2 2v12c0 1.1-.9 2-2 2H4c-1.1 0-2-.9-2-2V6c0-1.1.9-2 2-2z\"\/><polyline points=\"22,6 12,13 2,6\"\/><\/svg>\n        R\u00e9cap envoy\u00e9 au <strong>D\u00e9veloppeur<\/strong>\n      <\/div>\n    <\/div>\n\n    <!-- Erreur -->\n    <div class=\"form-error\" id=\"formError\">\n      <svg width=\"15\" height=\"15\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><circle cx=\"12\" cy=\"12\" r=\"10\"\/><line x1=\"12\" y1=\"8\" x2=\"12\" y2=\"12\"\/><line x1=\"12\" y1=\"16\" x2=\"12.01\" y2=\"16\"\/><\/svg>\n      <span id=\"formErrorMsg\">Une erreur est survenue. Merci de r\u00e9essayer.<\/span>\n    <\/div>\n\n    <!-- NAV -->\n    <div class=\"form-nav\" id=\"formNav\">\n      <button class=\"btn btn-ghost\" id=\"btnPrev\" type=\"button\" onclick=\"prevStep()\" style=\"visibility:hidden;\">\n        <svg width=\"15\" height=\"15\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><line x1=\"19\" y1=\"12\" x2=\"5\" y2=\"12\"\/><polyline points=\"12 19 5 12 12 5\"\/><\/svg>\n        Retour\n      <\/button>\n      <button class=\"btn btn-primary\" id=\"btnNext\" type=\"button\" onclick=\"nextStep()\">\n        <span class=\"btn-label\">Continuer<\/span>\n        <div class=\"spinner\"><\/div>\n        <svg class=\"arrow-icon\" width=\"15\" height=\"15\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"\/><polyline points=\"12 5 19 12 12 19\"\/><\/svg>\n      <\/button>\n    <\/div>\n\n  <\/div>\n  <\/form>\n  <div class=\"footer\">Levelup \u00a9 2026<\/div>\n<\/div>\n\n<div class=\"toast\" id=\"toast\">\n  <svg width=\"15\" height=\"15\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><polyline points=\"20 6 9 17 4 12\"\/><\/svg>\n  Brief envoy\u00e9 avec succ\u00e8s !\n<\/div>\n\n<script>\n\/\/ \u26a0\ufe0f IMPORTANT : remplace cette URL par le chemin r\u00e9el de ton fichier send-brief.php\n\/\/ Exemple : 'https:\/\/boost-levelup.com\/send-brief.php'\nvar PHP_ENDPOINT = 'https:\/\/boost-levelup.com\/send-brief.php';\n\nvar TOTAL = 4;\nvar current = 1;\nvar offerCount = 0;\nvar certifCount = 0;\nvar processCount = 0;\n\nfunction goTo(n) {\n  for (var i = 1; i <= TOTAL; i++) {\n    var el = document.getElementById('step-' + i);\n    if (el) el.classList.toggle('active', i === n);\n  }\n  current = n;\n  document.getElementById('stepNum').textContent = n;\n  document.getElementById('progressFill').style.width = Math.round(n \/ TOTAL * 100) + '%';\n  document.getElementById('btnPrev').style.visibility = n > 1 ? 'visible' : 'hidden';\n  document.querySelector('.btn-label').textContent = n === TOTAL ? 'Envoyer le brief' : 'Continuer';\n}\n\nfunction prevStep() { if (current > 1) { goTo(current - 1); window.scrollTo(0, 0); } }\nfunction nextStep() { if (current < TOTAL) { goTo(current + 1); window.scrollTo(0, 0); } else { submitForm(); } }\n\nfunction updateFileName(inputId, labelId, nameId) {\n  var input = document.getElementById(inputId);\n  var label = document.getElementById(labelId);\n  var nameEl = document.getElementById(nameId);\n  if (input && input.files && input.files[0]) {\n    var n = input.files[0].name;\n    label.textContent = n;\n    nameEl.querySelector('span').textContent = n;\n    nameEl.classList.add('visible');\n  }\n}\n\nfunction toggleCGV(show) {\n  document.getElementById('cgvWrapper').classList.toggle('visible', show);\n}\n\nfunction addOffer() {\n  offerCount++;\n  var id = offerCount;\n  var list = document.getElementById('offersList');\n  var card = document.createElement('div');\n  card.className = 'offer-card';\n  card.setAttribute('data-offer-id', id);\n  card.innerHTML =\n    '<div class=\"offer-card-header\" onclick=\"toggleOffer(' + id + ')\">' +\n      '<span class=\"offer-card-title placeholder\" id=\"offerTitle-' + id + '\">Nouvelle offre<\/span>' +\n      '<div class=\"offer-card-actions\">' +\n        '<span class=\"offer-toggle-icon\"><svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><polyline points=\"6 9 12 15 18 9\"\/><\/svg><\/span>' +\n        '<button class=\"btn-delete-offer\" type=\"button\" onclick=\"removeOffer(event,' + id + ')\"><svg width=\"13\" height=\"13\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><line x1=\"18\" y1=\"6\" x2=\"6\" y2=\"18\"\/><line x1=\"6\" y1=\"6\" x2=\"18\" y2=\"18\"\/><\/svg><\/button>' +\n      '<\/div>' +\n    '<\/div>' +\n    '<div class=\"offer-card-body\">' +\n      '<div class=\"offer-field\"><label>Nom de l\\'offre *<\/label><input type=\"text\" id=\"offerName-' + id + '\" placeholder=\"Ex : Accompagnement Qualiopi Express\" oninput=\"updateOfferTitle(' + id + ')\"><\/div>' +\n      '<div class=\"offer-field\"><label>Description<\/label><textarea id=\"offerDesc-' + id + '\" placeholder=\"Contenu, livrables, transformation promise\u2026\"><\/textarea><\/div>' +\n      '<div class=\"offer-field-row\">' +\n        '<div class=\"offer-field\"><label>Dur\u00e9e<\/label><input type=\"text\" id=\"offerDuration-' + id + '\" placeholder=\"Ex : 3 mois\"><\/div>' +\n        '<div class=\"offer-field\"><label>Tarif<\/label><input type=\"text\" id=\"offerPrice-' + id + '\" placeholder=\"Ex : 2 500\u20ac\"><\/div>' +\n      '<\/div>' +\n      '<div class=\"offer-field\"><label>Profil id\u00e9al du client<\/label><input type=\"text\" id=\"offerTarget-' + id + '\" placeholder=\"Ex : Formateur ind\u00e9pendant souhaitant cr\u00e9er son OF en 90 jours\"><\/div>' +\n    '<\/div>';\n  list.appendChild(card);\n}\n\nfunction updateOfferTitle(id) {\n  var name = document.getElementById('offerName-' + id).value.trim();\n  var title = document.getElementById('offerTitle-' + id);\n  title.textContent = name || 'Nouvelle offre';\n  title.classList.toggle('placeholder', !name);\n}\n\nfunction toggleOffer(id) {\n  var card = document.querySelector('.offer-card[data-offer-id=\"' + id + '\"]');\n  if (card) card.classList.toggle('collapsed');\n}\n\nfunction removeOffer(e, id) {\n  e.stopPropagation();\n  var card = document.querySelector('.offer-card[data-offer-id=\"' + id + '\"]');\n  if (card) { card.style.opacity = '0'; card.style.transition = 'opacity 0.2s'; setTimeout(function(){ card.remove(); }, 200); }\n}\n\nfunction addCertif(def) {\n  certifCount++;\n  var id = certifCount;\n  var list = document.getElementById('certifList');\n  var row = document.createElement('div');\n  row.className = 'certif-row';\n  row.setAttribute('data-certif-id', id);\n  row.innerHTML =\n    '<input type=\"text\" id=\"certif-' + id + '\" value=\"' + def + '\" placeholder=\"Ex : Qualiopi, Datadock, RNCP\u2026\">' +\n    '<button class=\"btn-remove\" type=\"button\" onclick=\"removeCertif(' + id + ')\"><svg width=\"13\" height=\"13\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><line x1=\"18\" y1=\"6\" x2=\"6\" y2=\"18\"\/><line x1=\"6\" y1=\"6\" x2=\"18\" y2=\"18\"\/><\/svg><\/button>';\n  list.appendChild(row);\n}\n\nfunction removeCertif(id) {\n  var row = document.querySelector('.certif-row[data-certif-id=\"' + id + '\"]');\n  if (row) { row.style.opacity = '0'; row.style.transition = 'opacity 0.2s'; setTimeout(function(){ row.remove(); }, 200); }\n}\n\nfunction addProcessStep() {\n  processCount++;\n  var id = processCount;\n  var list = document.getElementById('processList');\n  var stepNum = list.querySelectorAll('.process-step-card').length + 1;\n  var card = document.createElement('div');\n  card.className = 'process-step-card';\n  card.setAttribute('data-process-id', id);\n  card.innerHTML =\n    '<div class=\"process-step-left\">' +\n      '<div class=\"process-step-num\" id=\"processNum-' + id + '\">' + stepNum + '<\/div>' +\n      '<div class=\"process-step-line\"><\/div>' +\n    '<\/div>' +\n    '<div class=\"process-step-body\">' +\n      '<div class=\"process-step-top\">' +\n        '<input type=\"text\" id=\"processTitle-' + id + '\" placeholder=\"NOM DE L\\'\u00c9TAPE \u2014 Ex : PRISE DE CONTACT\">' +\n        '<button class=\"btn-remove-step\" type=\"button\" onclick=\"removeProcessStep(' + id + ')\"><svg width=\"13\" height=\"13\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><line x1=\"18\" y1=\"6\" x2=\"6\" y2=\"18\"\/><line x1=\"6\" y1=\"6\" x2=\"18\" y2=\"18\"\/><\/svg><\/button>' +\n      '<\/div>' +\n      '<textarea id=\"processDesc-' + id + '\" placeholder=\"D\u00e9cris ce que tu fais concr\u00e8tement lors de cette \u00e9tape\u2026\"><\/textarea>' +\n    '<\/div>';\n  list.appendChild(card);\n  updateProcessLines();\n}\n\nfunction removeProcessStep(id) {\n  var card = document.querySelector('.process-step-card[data-process-id=\"' + id + '\"]');\n  if (card) {\n    card.style.opacity = '0'; card.style.transition = 'opacity 0.2s';\n    setTimeout(function(){ card.remove(); renumberProcessSteps(); updateProcessLines(); }, 200);\n  }\n}\n\nfunction renumberProcessSteps() {\n  document.querySelectorAll('.process-step-card').forEach(function(card, i) {\n    var num = document.getElementById('processNum-' + card.getAttribute('data-process-id'));\n    if (num) num.textContent = i + 1;\n  });\n}\n\nfunction updateProcessLines() {\n  var cards = document.querySelectorAll('.process-step-card');\n  cards.forEach(function(card, i) {\n    var line = card.querySelector('.process-step-line');\n    if (line) line.style.display = (i < cards.length - 1) ? 'block' : 'none';\n  });\n}\n\nfunction collectOffers() {\n  var cards = document.querySelectorAll('.offer-card');\n  if (!cards.length) return '\u2014';\n  var out = [];\n  cards.forEach(function(c, i) {\n    var id = c.getAttribute('data-offer-id');\n    function g(fid) { var el = document.getElementById(fid); return el ? (el.value.trim() || '\u2014') : '\u2014'; }\n    out.push('Offre ' + (i+1) + ' : ' + g('offerName-'+id) + '\\n  Description : ' + g('offerDesc-'+id) + '\\n  Dur\u00e9e : ' + g('offerDuration-'+id) + ' | Tarif : ' + g('offerPrice-'+id) + '\\n  Profil : ' + g('offerTarget-'+id));\n  });\n  return out.join('\\n\\n');\n}\n\nfunction collectCertifs() {\n  var vals = [];\n  document.querySelectorAll('.certif-row').forEach(function(r) {\n    var el = document.getElementById('certif-' + r.getAttribute('data-certif-id'));\n    if (el && el.value.trim()) vals.push(el.value.trim());\n  });\n  return vals.join(', ') || '\u2014';\n}\n\nfunction collectProcess() {\n  var cards = document.querySelectorAll('.process-step-card');\n  if (!cards.length) return '\u2014';\n  var out = [];\n  cards.forEach(function(c, i) {\n    var id = c.getAttribute('data-process-id');\n    function g(fid) { var el = document.getElementById(fid); return el ? (el.value.trim() || '\u2014') : '\u2014'; }\n    out.push('\u00c9tape ' + (i+1) + ' \u2014 ' + g('processTitle-'+id) + '\\n  ' + g('processDesc-'+id));\n  });\n  return out.join('\\n\\n');\n}\n\nfunction showToast() {\n  var t = document.getElementById('toast');\n  t.classList.add('show');\n  setTimeout(function(){ t.classList.remove('show'); }, 4500);\n}\n\nfunction showError(msg) {\n  var el = document.getElementById('formError');\n  document.getElementById('formErrorMsg').textContent = msg || 'Une erreur est survenue. Merci de r\u00e9essayer.';\n  el.classList.add('visible');\n  setTimeout(function(){ el.classList.remove('visible'); }, 6000);\n}\n\nfunction submitForm() {\n  document.getElementById('offresHidden').value = collectOffers();\n  document.getElementById('certifHidden').value = collectCertifs();\n  document.getElementById('processHidden').value = collectProcess();\n\n  var btn = document.getElementById('btnNext');\n  btn.classList.add('loading');\n\n  var formData = new FormData(document.getElementById('mainForm'));\n\n  fetch(PHP_ENDPOINT, {\n    method: 'POST',\n    body: formData\n    \/\/ Pas de Content-Type manuel \u2014 le navigateur le g\u00e8re avec le boundary multipart\n  })\n  .then(function(r) {\n    \/\/ On essaie de parser le JSON, mais on accepte aussi un 200 sans JSON\n    return r.json().then(function(data) {\n      return { status: r.status, data: data };\n    }).catch(function() {\n      return { status: r.status, data: null };\n    });\n  })\n  .then(function(result) {\n    if (result.status === 200) {\n      \/\/ Succ\u00e8s\n      for (var i = 1; i <= TOTAL; i++) {\n        var el = document.getElementById('step-' + i);\n        if (el) el.classList.remove('active');\n      }\n      document.getElementById('successMsg').classList.add('active');\n      document.getElementById('formNav').style.display = 'none';\n      document.getElementById('progressFill').style.width = '100%';\n      document.getElementById('stepNum').textContent = TOTAL;\n      showToast();\n    } else {\n      var msg = (result.data && result.data.error) ? result.data.error : 'Erreur serveur (' + result.status + '). Merci de r\u00e9essayer.';\n      showError(msg);\n    }\n  })\n  .catch(function(err) {\n    showError('Impossible de contacter le serveur. V\u00e9rifie ta connexion ou l\\'URL du script PHP.');\n    console.error('Fetch error:', err);\n  })\n  .finally(function() {\n    btn.classList.remove('loading');\n  });\n}\n\n\/* \u2500\u2500\u2500 Init \u2500\u2500\u2500 *\/\naddCertif('Qualiopi');\ngoTo(1);\n\n\/\/ CGV toggle robuste\n['cgvOui', 'cgvNon'].forEach(function(id) {\n  var el = document.getElementById(id);\n  if (!el) return;\n  ['click', 'change'].forEach(function(evt) {\n    el.addEventListener(evt, function() {\n      toggleCGV(document.getElementById('cgvOui').checked);\n    });\n  });\n});\n<\/script>\n<\/body>\n<\/html>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Levelup \u2014 Brief Client LEVELUP \u00c9tape 1 \/ 4 \u00c9tape 01 \u2014 Documents &#038; structure Ta soci\u00e9t\u00e9 en quelques mots Ces \u00e9l\u00e9ments nous permettent de comprendre ta structure avant de d\u00e9marrer. Kbis * Importer ton Kbis \u2014 PDF, JPG, PNG (max. 25 Mo) Structure de l&rsquo;\u00e9quipe Qui s&rsquo;occupe de quoi dans ta soci\u00e9t\u00e9 ? Commerciaux [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-2","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/boost-levelup.com\/index.php?rest_route=\/wp\/v2\/pages\/2","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/boost-levelup.com\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/boost-levelup.com\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/boost-levelup.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/boost-levelup.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2"}],"version-history":[{"count":68,"href":"https:\/\/boost-levelup.com\/index.php?rest_route=\/wp\/v2\/pages\/2\/revisions"}],"predecessor-version":[{"id":83,"href":"https:\/\/boost-levelup.com\/index.php?rest_route=\/wp\/v2\/pages\/2\/revisions\/83"}],"wp:attachment":[{"href":"https:\/\/boost-levelup.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}