*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#2b4a3e;--bg-light:#467563;--bg-feedback:#1e3a2f;--accent:#fff;--green:#467563;--white:#fff;--gray:#ffffff8c;--card-bg:#ffffff1f;--card-border:#fff3;--radius:14px;--transition:.3s ease}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--white);-webkit-font-smoothing:antialiased;min-height:100dvh;font-family:Inter,system-ui,-apple-system,sans-serif}#root{max-width:480px;min-height:100dvh;margin:0 auto;padding:24px 20px 40px}h1{letter-spacing:-.3px;font-size:1.05rem;font-weight:800;line-height:1.2}h2{font-size:1.35rem;font-weight:700;line-height:1.3}h3{font-size:1.1rem;font-weight:600;line-height:1.3}p{line-height:1.55}.text-gray{color:var(--gray)}.text-accent{color:var(--accent)}.text-sm{font-size:.875rem}.text-xs{font-size:.8rem}.logo{letter-spacing:-.5px;color:var(--accent);margin-bottom:32px;font-size:1.5rem;font-weight:800}.btn-primary{background:var(--accent);width:100%;color:var(--bg);border-radius:var(--radius);cursor:pointer;transition:transform var(--transition), opacity var(--transition);text-align:center;border:none;min-height:52px;padding:16px 24px;font-family:inherit;font-size:1rem;font-weight:700;display:block}.btn-primary:active{transform:scale(.97)}.btn-primary:disabled{opacity:.35;cursor:not-allowed;transform:none}.btn-secondary{color:var(--gray);border:1px solid var(--card-border);cursor:pointer;transition:var(--transition);background:0 0;border-radius:10px;align-items:center;gap:6px;padding:10px 18px;font-family:inherit;font-size:.875rem;display:inline-flex}.btn-secondary:hover{color:var(--white);border-color:#ffffff4d}.card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius);transition:var(--transition);padding:18px}.choice-card{background:var(--card-bg);border:1.5px solid var(--card-border);width:100%;color:var(--white);text-align:left;cursor:pointer;transition:border-color var(--transition), background var(--transition), transform .15s ease;border-radius:12px;min-height:48px;padding:16px 18px;font-family:inherit;font-size:.95rem;font-weight:500;line-height:1.4;display:block}.choice-card:active{transform:scale(.98)}.choice-card.selected{border-color:var(--accent);background:#fff3}.progress-bar-container{background:var(--bg);z-index:10;padding:16px 0 12px;position:sticky;top:0}.progress-bar{background:#fff3;border-radius:2px;width:100%;height:4px;overflow:hidden}.progress-bar-fill{background:var(--accent);border-radius:2px;height:100%;transition:width .4s}.progress-text{color:var(--gray);margin-top:6px;font-size:.75rem}.checkbox-row{cursor:pointer;align-items:flex-start;gap:12px;display:flex}.checkbox-row input[type=checkbox]{appearance:none;border:2px solid var(--card-border);cursor:pointer;width:22px;min-width:22px;height:22px;transition:var(--transition);background:0 0;border-radius:6px;margin-top:2px}.checkbox-row input[type=checkbox]:checked{background:var(--accent);border-color:var(--accent);background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 16 16' fill='%232B4A3E' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2.5-2.5a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;background-size:14px}.checkbox-row label{color:#ffffffd9;cursor:pointer;font-size:.9rem;line-height:1.5}.pillar-intro{text-align:center;padding:40px 0}.pillar-icon{background:#ffffff26;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 16px;font-size:28px;display:flex}.score-hero{text-align:center;padding:40px 0 32px}.score-letter{margin-bottom:8px;font-size:6rem;font-weight:800;line-height:1}.score-gauge{background:#fff3;border-radius:5px;width:100%;height:10px;margin-top:20px;overflow:hidden}.score-gauge-fill{border-radius:5px;height:100%;transition:width 1.2s}.pillar-result{border-bottom:1px solid #ffffff2e;margin-bottom:40px;padding-bottom:36px}.pillar-result:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.pillar-header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.pillar-badge{border-radius:20px;padding:4px 10px;font-size:.8rem;font-weight:600}.badge-bon{color:#fff;background:#ffffff2e}.badge-moyen{color:#ffd54f;background:#ffd54f40}.badge-faible{color:#ff9800;background:#ff980040}.pillar-bar{background:#ffffff2e;border-radius:3px;width:100%;height:6px;margin-bottom:16px;overflow:hidden}.pillar-bar-fill{border-radius:3px;height:100%;transition:width .8s}.service-details{margin:0 0 14px}.detail-item{border-top:1px solid #ffffff1a}.detail-item:last-child{border-bottom:1px solid #ffffff1a}.detail-toggle{color:#fffc;text-align:left;cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;gap:8px;width:100%;padding:10px 0;font-family:inherit;font-size:.82rem;line-height:1.4;display:flex}.detail-toggle:hover{color:var(--white)}.detail-title{flex:1}.detail-chevron{color:var(--accent);transition:transform var(--transition);text-align:center;min-width:14px;font-size:1rem;font-weight:600}.detail-item.open .detail-chevron{transform:rotate(90deg)}.detail-desc{color:var(--gray);max-height:0;transition:max-height var(--transition), padding var(--transition);padding:0;font-size:.8rem;line-height:1.5;overflow:hidden}.detail-item.open .detail-desc{max-height:120px;padding:0 0 10px}.service-card{border-radius:var(--radius);background:#ffffff24;border:1px solid #ffffff38;margin-bottom:12px;padding:18px}.service-accroche{color:var(--accent);text-transform:uppercase;letter-spacing:.5px;opacity:.8;margin-bottom:6px;font-size:.75rem;font-weight:600}.service-card h4{margin-bottom:8px;font-size:.95rem;font-weight:600}.service-card p{color:var(--gray);margin-bottom:14px;font-size:.85rem;line-height:1.5}.btn-interest{color:var(--accent);border:1.5px solid var(--accent);cursor:pointer;transition:var(--transition);background:0 0;border-radius:10px;align-items:center;gap:6px;min-height:44px;padding:10px 18px;font-family:inherit;font-size:.875rem;font-weight:600;display:inline-flex}.btn-interest:active{transform:scale(.97)}.btn-interest.active{background:var(--accent);color:var(--bg)}.standalone-section{border-radius:var(--radius);background:#ffffff1a;border:1px solid #ffffff38;margin-top:40px;padding:24px 20px}.standalone-section .section-label{color:var(--accent);text-transform:uppercase;letter-spacing:1px;opacity:.8;margin-bottom:16px;font-size:.7rem;font-weight:700}.standalone-section h3{margin-bottom:4px}.standalone-section>p{color:var(--gray);margin-bottom:16px;font-size:.85rem;line-height:1.5}.pillar-services-intro{color:#fffc;border-left:3px solid var(--accent);background:#ffffff1a;border-radius:0 8px 8px 0;margin-bottom:16px;padding:12px 16px;font-size:.9rem;line-height:1.5}.feedback-block{border:2px solid var(--accent);border-radius:var(--radius);text-align:center;background:#ffffff1f;margin-top:48px;padding:32px 24px}.feedback-block .feedback-icon{margin-bottom:12px;font-size:2rem}.feedback-block h3{margin-bottom:8px;font-size:1.2rem;font-weight:700}.feedback-block p{color:var(--gray);margin-bottom:20px;font-size:.9rem;line-height:1.5}.feedback-block .btn-primary{padding:18px 24px;font-size:1.05rem}.feedback-screen{background:var(--bg-feedback);min-height:100dvh;margin:-24px -20px -40px;padding:24px 20px 40px}.feedback-screen .progress-bar-container{background:var(--bg-feedback)}.scale-container{align-items:center;gap:10px;display:flex}.scale-label{color:var(--gray);text-align:center;min-width:60px;font-size:.7rem;line-height:1.3}.scale-buttons{flex:1;justify-content:center;gap:8px;display:flex}.scale-btn{border:1.5px solid var(--card-border);background:var(--card-bg);width:44px;height:44px;color:var(--white);cursor:pointer;transition:border-color var(--transition), background var(--transition), transform .15s ease;border-radius:50%;font-family:inherit;font-size:.95rem;font-weight:600}.scale-btn:active{transform:scale(.95)}.scale-btn.selected{border-color:var(--accent);background:var(--accent);color:var(--bg-feedback)}.feedback-email-field{margin-top:20px}.feedback-email-label{color:#ffffffd9;margin-bottom:8px;font-size:.85rem;font-weight:600;display:block}.feedback-email-input{background:var(--card-bg);border:1.5px solid var(--card-border);width:100%;color:var(--white);transition:border-color var(--transition);border-radius:12px;padding:14px 16px;font-family:inherit;font-size:.95rem}.feedback-email-input::placeholder{color:var(--gray)}.feedback-email-input:focus{border-color:var(--accent);outline:none}.feedback-textarea{background:var(--card-bg);border:1.5px solid var(--card-border);width:100%;color:var(--white);resize:vertical;min-height:100px;transition:border-color var(--transition);border-radius:12px;padding:14px 16px;font-family:inherit;font-size:.9rem;line-height:1.5}.feedback-textarea::placeholder{color:var(--gray)}.feedback-textarea:focus{border-color:var(--accent);outline:none}.feedback-confirmation{text-align:center;padding-top:60px}.confirmation-icon{background:var(--accent);width:72px;height:72px;color:var(--bg);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 24px;font-size:2rem;font-weight:800;display:flex}.fade-in{animation:.4s forwards fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.back-btn{color:var(--gray);cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;margin-bottom:8px;padding:4px 0;font-family:inherit;font-size:.85rem;display:inline-flex}.back-btn:hover{color:var(--white)}@keyframes scoreReveal{0%{opacity:0;transform:scale(.5)}60%{transform:scale(1.1)}to{opacity:1;transform:scale(1)}}.score-letter.animate{animation:.8s forwards scoreReveal}.mb-8{margin-bottom:8px}.mb-12{margin-bottom:12px}.mb-16{margin-bottom:16px}.mb-20{margin-bottom:20px}.mb-24{margin-bottom:24px}.mb-32{margin-bottom:32px}.mt-12{margin-top:12px}.mt-20{margin-top:20px}.mt-32{margin-top:32px}.gap-12{flex-direction:column;gap:12px;display:flex}.points-list{flex-direction:column;gap:16px;margin:28px 0;display:flex}.point-item{align-items:flex-start;gap:14px;display:flex}.point-icon{background:#ffffff26;border-radius:10px;justify-content:center;align-items:center;width:40px;min-width:40px;height:40px;font-size:18px;display:flex}.point-text{color:#ffffffe6;padding-top:8px;font-size:.95rem;line-height:1.45}.mention{text-align:center;color:var(--gray);letter-spacing:.5px;margin-top:20px;font-size:.8rem}
