*{box-sizing:border-box;margin:0;padding:0}body{font-family:Segoe UI,system-ui,sans-serif;background:#0a1929;color:#f5f3ee;min-height:100vh;padding:32px 16px}.page-grid{max-width:680px;margin:0 auto}.form-card{background:#f5f3ee;color:#0a1929;border-radius:20px;padding:36px 32px;box-shadow:0 24px 80px #0006}.logo{font-size:12px;font-weight:700;letter-spacing:2.5px;color:#7b1fd4;text-transform:uppercase;margin-bottom:24px}.progress-row{display:flex;align-items:center;gap:12px;margin-bottom:28px}.progress-bar{flex:1;height:6px;background:#e0dbd6;border-radius:3px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#7b1fd4,#f47fb1);width:0%;border-radius:3px;transition:width .35s cubic-bezier(.4,0,.2,1)}.progress-text{font-size:13px;color:#6b6661;font-weight:600;min-width:36px;text-align:right}.validated{display:flex;align-items:center;gap:12px;background:#f3eaff;border:1px solid #d8c4f5;border-radius:12px;padding:14px 16px;margin-bottom:10px;animation:slideIn .3s ease-out}.validated .check{color:#7b1fd4;font-weight:700;font-size:16px;flex-shrink:0}.validated .answer{flex:1;font-size:14px;color:#2a1f3d;line-height:1.4}.validated .label{color:#7b1fd4;font-weight:600;margin-right:6px}.validated .edit-btn{background:transparent;border:1px solid transparent;color:#7b1fd4;cursor:pointer;padding:5px 7px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;transition:all .15s}.validated .edit-btn:hover{background:#fff;border-color:#d8c4f5}.validated .edit-btn svg{width:14px;height:14px;display:block}.active-card{background:#fff;border:2px solid #e0dbd6;border-radius:14px;padding:24px 22px;margin-top:14px;animation:slideIn .35s ease-out}.active-card .step-header{display:flex;align-items:center;gap:12px;margin-bottom:8px}.active-card .step-num{background:#7b1fd4;color:#fff;width:28px;height:28px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;flex-shrink:0}.active-card .step-title{font-size:16px;font-weight:600;color:#0a1929}.active-card .step-subtitle{font-size:13px;color:#6b6661;margin-bottom:18px;margin-left:40px}input[type=text],input[type=email],input[type=tel],select,textarea{width:100%;padding:13px 14px;border:2px solid #e0dbd6;border-radius:10px;font-size:15px;font-family:inherit;color:#0a1929;background:#fff;outline:none;transition:border-color .2s;appearance:none}input:focus,select:focus,textarea:focus{border-color:#7b1fd4}input.has-err,select.has-err,textarea.has-err{border-color:#c0392b}.field-err{display:none;margin-top:6px;font-size:12px;color:#c0392b}.field-err.show{display:block}.field-group{margin-bottom:16px}.field-group:last-of-type{margin-bottom:4px}.field-label{display:block;font-size:12.5px;font-weight:600;color:#6b6661;margin-bottom:6px;letter-spacing:.2px}.phone-row{display:flex;gap:8px}.phone-row .indicatif-select{width:120px;flex-shrink:0;padding:13px 10px;cursor:pointer;font-size:14px;background:#fff url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8' fill='%237B1FD4'%3E%3Cpath d='M6 8L0 0h12z'/%3E%3C/svg%3E") no-repeat right 10px center;background-size:9px 6px}.phone-row .phone-input{flex:1}.options{display:flex;flex-direction:column;gap:8px}.option{display:flex;align-items:flex-start;gap:12px;padding:13px 14px;background:#fff;border:2px solid #e0dbd6;border-radius:10px;cursor:pointer;transition:all .15s;color:#0a1929;line-height:1.4}.option:hover{border-color:#b89cd9;background:#faf7fd}.option.selected{border-color:#7b1fd4;background:#f3eaff}.option.selected .option-title{color:#4a1187}.option.disabled{opacity:.4;pointer-events:none}.option-marker{width:22px;height:22px;border-radius:50%;border:2px solid #d4cec8;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:#fff;transition:all .15s;margin-top:1px}.option.selected .option-marker{border-color:#7b1fd4;background:#7b1fd4}.option.selected .option-marker:after{content:"✓";color:#fff;font-size:13px;font-weight:700}.option.multi .option-marker{border-radius:5px}.option-icon{font-size:18px;flex-shrink:0;line-height:1.4}.option-content{flex:1;min-width:0}.option-title{font-size:14px;font-weight:600;color:#0a1929;line-height:1.35}.option-desc{font-size:12.5px;color:#6b6661;margin-top:3px;line-height:1.4}.extra-block{margin-top:18px;padding-top:18px;border-top:1px dashed #d4cec8}.option.extra{background:#faf7f4}.option.extra .option-marker{border-radius:5px}.autre-textarea{margin-top:10px;min-height:80px;resize:vertical;font-size:14px}.hidden{display:none!important}.counter-info{font-size:12px;color:#6b6661;margin-top:10px;text-align:right}.btn-continue{width:100%;margin-top:18px;padding:14px 20px;background:linear-gradient(135deg,#7b1fd4,#f47fb1);color:#fff;border:none;border-radius:10px;font-family:inherit;font-weight:600;font-size:15px;cursor:pointer;transition:opacity .2s,transform .1s}.btn-continue:hover:not(:disabled){opacity:.92}.btn-continue:active:not(:disabled){transform:translateY(1px)}.btn-continue:disabled{background:#c8c1ba;cursor:not-allowed}.calendar-card{background:#f5f3ee;color:#0a1929;border-radius:20px;padding:28px 22px;text-align:center;position:sticky;top:32px;box-shadow:0 24px 80px #0000004d}.calendar-card.unlocked{background:linear-gradient(160deg,#f3eaff,#fff);border:2px solid #7B1FD4}.calendar-card.education{background:linear-gradient(160deg,#fff,#faf7f4);border:2px solid #d8c4f5}.calendar-card.education .lock-circle{background:#f3eaff;color:#7b1fd4}.edu-buttons{display:flex;flex-direction:column;gap:10px;margin-top:14px}.edu-btn{display:block;width:100%;padding:12px 16px;border-radius:10px;font-family:inherit;font-weight:600;font-size:14px;text-decoration:none;text-align:center;cursor:pointer;transition:opacity .2s,transform .1s,background .2s}.edu-btn.primary{background:linear-gradient(135deg,#7b1fd4,#f47fb1);color:#fff;border:none}.edu-btn.primary:hover{opacity:.92}.edu-btn.secondary{background:#fff;color:#7b1fd4;border:1.5px solid #d8c4f5}.edu-btn.secondary:hover{background:#f3eaff}.end-block{margin-top:14px;padding:24px 22px;background:#fff;border-radius:14px;border:2px solid #e0dbd6;animation:slideIn .35s ease-out}.end-title{font-size:20px;font-weight:700;color:#0a1929;line-height:1.3;margin-bottom:10px}.end-desc{font-size:14.5px;color:#444;line-height:1.6}.lock-circle{width:64px;height:64px;background:#e0dbd6;color:#6b6661;border-radius:50%;margin:8px auto 18px;display:flex;align-items:center;justify-content:center;transition:all .4s}.lock-circle svg{width:28px;height:28px;display:block}.calendar-card.unlocked .lock-circle{background:#7b1fd4;color:#fff;transform:scale(1.05)}.calendar-card h3{font-size:16px;font-weight:600;margin-bottom:8px}.calendar-card p{font-size:13px;color:#6b6661;line-height:1.5;margin-bottom:18px}.mini-progress{height:4px;background:#e0dbd6;border-radius:2px;overflow:hidden;margin-bottom:6px}.mini-progress-fill{height:100%;background:linear-gradient(90deg,#7b1fd4,#f47fb1);width:0%;border-radius:2px;transition:width .35s cubic-bezier(.4,0,.2,1)}.mini-progress-text{font-size:11px;color:#6b6661;font-weight:600}.calendar-cta{display:none;width:100%;margin-top:14px;padding:12px 18px;background:linear-gradient(135deg,#7b1fd4,#f47fb1);color:#fff;border:none;border-radius:10px;font-family:inherit;font-weight:600;font-size:14px;cursor:pointer}.calendar-card.unlocked .calendar-cta{display:block}.result-badge{display:inline-block;padding:6px 14px;border-radius:20px;font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase;margin-bottom:16px}.badge-fondations{background:#fff3cd;color:#856404}.badge-acceleration{background:#d1f0e0;color:#155724}.badge-structuration{background:#d8d0ff;color:#3d008c}.result-title{font-size:22px;margin-bottom:12px;font-weight:700;line-height:1.3}.result-desc{font-size:15px;color:#444;line-height:1.6;margin-bottom:24px}.reco-list{list-style:none;margin-bottom:24px;display:flex;flex-direction:column;gap:10px}.reco-list li{display:flex;gap:12px;align-items:flex-start;font-size:14px;line-height:1.5;padding:12px 14px;background:#fff;border-radius:10px;border-left:3px solid #7B1FD4}.reco-list li .reco-num{font-size:11px;font-weight:700;letter-spacing:1px;color:#7b1fd4;background:#f3eaff;padding:4px 7px;border-radius:6px;flex-shrink:0;min-width:28px;text-align:center}.result-divider{height:1px;background:#e0dbd6;margin:22px 0}.result-cta-text{font-size:13px;color:#444;margin-bottom:14px}@keyframes slideIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@media(max-width:480px){.form-card{padding:26px 20px}.active-card{padding:20px 16px}.result-title{font-size:19px}}
