.o-form{margin-top:30px;display:grid;gap:12px;max-width:680px}.o-row{display:flex;gap:10px;flex-wrap:wrap}.o-row>.o-in{flex:1 1 260px}.s .o-in{height:52px;padding:0 18px;border-radius:999px;border:1px solid var(--kz-line-input);background:var(--kz-surface);color:var(--kz-text);font:inherit;font-size:16px;min-width:0;box-shadow:var(--kz-shadow-sm)}.s select.o-in{appearance:none;padding-right:40px;background-image:linear-gradient(45deg,transparent 50%,var(--kz-text-3) 50%),linear-gradient(135deg,var(--kz-text-3) 50%,transparent 50%);background-position:calc(100% - 22px) 50%,calc(100% - 16px) 50%;background-size:6px 6px;background-repeat:no-repeat}.s .o-in::placeholder{color:var(--kz-text-4)}.s .o-form .s-btn{height:52px}.o-hint{font-size:13.5px;color:var(--kz-text-3)}.o-err{border-radius:var(--kz-radius-md);background:var(--kz-danger-wash);border:1px solid var(--kz-danger-line);color:var(--kz-danger)}.o-err,.o-ok{padding:12px 16px;font-size:14.5px}.o-ok{border-radius:var(--kz-radius-md);background:var(--kz-success-soft);color:var(--kz-success-deep)}.o-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.o-wait{display:flex;align-items:center;gap:12px;font-size:14.5px;color:var(--kz-text-2)}.o-wait i{width:18px;height:18px;border-radius:50%;border:2px solid var(--kz-accent-line);border-top-color:var(--kz-accent-strong);animation:o-spin .8s linear infinite;flex:none}@keyframes o-spin{to{transform:rotate(1turn)}}.o-res{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:28px;align-items:start}.o-score{display:grid;gap:14px;justify-items:start}.o-score-n{font-family:var(--kz-font-display);font-weight:800;font-size:clamp(72px,9vw,120px);line-height:.95;letter-spacing:-.05em;background:var(--kz-gradient-text);-webkit-background-clip:text;background-clip:text;color:transparent}.o-score-n small{font-size:.36em;letter-spacing:-.02em}.o-dom{font-family:var(--kz-font-display);font-size:22px;font-weight:700;letter-spacing:-.03em;overflow-wrap:anywhere}.o-bar{width:100%;height:10px;border-radius:999px;background:var(--kz-surface-3);overflow:hidden}.o-bar i{display:block;height:100%;border-radius:inherit;background:var(--kz-gradient)}.o-meta{font-size:13.5px;color:var(--kz-text-3)}.o-crit{list-style:none;margin:0;padding:0;display:grid;gap:8px}.o-crit li{display:grid;grid-template-columns:26px minmax(0,1fr) auto;gap:12px;align-items:start;padding:12px 14px;border-radius:var(--kz-radius-md);background:var(--kz-surface);border:1px solid var(--kz-line)}.o-crit strong{display:block;font-size:15px;font-weight:600}.o-crit p{font-size:13.5px;margin-top:2px;overflow-wrap:anywhere}.o-crit p,.o-pts{color:var(--kz-text-3)}.o-pts{font-weight:600;white-space:nowrap}.o-dot,.o-pts{font-size:13px}.o-dot{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-weight:700}.o-dot.ok{background:var(--kz-success-soft);color:var(--kz-success)}.o-dot.partiel{background:var(--kz-warn-soft);color:var(--kz-warn)}.o-dot.absent{background:var(--kz-danger-soft);color:var(--kz-danger)}.o-fix{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;list-style:none;margin:0;padding:0}.o-fix li{display:grid;gap:8px;align-content:start}.o-fix .s-kick{margin:0}.o-fix h3{font-family:var(--kz-font-display);font-size:18px;letter-spacing:-.02em}.s .o-fix a.o-k{font-weight:600}.o-gain,.s .o-fix a.o-k{color:var(--kz-accent-text)}.o-gain{font-family:var(--kz-font-display);font-weight:700;font-size:15px}.o-share{display:flex;flex-wrap:wrap;gap:10px}.o-mail{display:grid;gap:12px}.o-consent{display:flex;gap:10px;align-items:flex-start;font-size:13.5px;color:var(--kz-text-2);line-height:1.5}.o-consent input{margin-top:3px;width:18px;height:18px;accent-color:var(--kz-accent-strong);flex:none}.o-texte{font-size:13.5px;color:var(--kz-text-2)}.o-texte summary{cursor:pointer;color:var(--kz-accent-text);font-weight:600}.o-texte-objet{margin:10px 0 6px;font-weight:600}.o-texte-corps{margin:0;padding:12px 16px;border-radius:var(--kz-radius-md);border:1px solid var(--kz-line);background:var(--kz-surface);white-space:pre-line;line-height:1.55}.o-mystere-etapes{margin:0 0 16px;padding-left:20px;display:grid;gap:6px;font-size:14.5px;color:var(--kz-text-2)}.o-duo{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}.o-duo .s-block h2{font-family:var(--kz-font-display);font-size:22px;letter-spacing:-.03em;margin-bottom:8px}.o-count{display:flex;flex-wrap:wrap;gap:16px}.o-count .s-block{flex:1 1 260px}.o-big{font-family:var(--kz-font-display);font-weight:800;font-size:clamp(48px,6vw,72px);line-height:1;letter-spacing:-.05em;background:var(--kz-gradient-text);-webkit-background-clip:text;background-clip:text;color:transparent}.s-deep .o-big{background:none;color:var(--kz-on-accent)}.o-table{width:100%;border-collapse:collapse;font-size:14.5px}.o-table th{text-align:left;font-size:12.5px;font-weight:600;color:var(--kz-text-label);padding:10px 12px;border-bottom:1px solid var(--kz-line)}.o-table td{padding:12px;border-bottom:1px solid var(--kz-line-2);overflow-wrap:anywhere}.o-table tr:last-child td{border-bottom:0}.o-note{font-size:13.5px;color:var(--kz-text-3);max-width:760px}.o-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.o-kpis .s-block{display:grid;gap:8px;align-content:start}.o-kpis small{font-size:13px;color:var(--kz-text-3)}.s-deep.s-block small{color:var(--kz-on-accent)}.o-collecte{font-size:14px;font-weight:600;color:var(--kz-text-3)}.o-meth{display:grid;gap:12px;max-width:820px}.o-meth li,.o-meth p{color:var(--kz-text-2);font-size:15px;line-height:1.65}.o-meth ul{padding-left:20px;display:grid;gap:6px}.o-tools{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.s .o-tools a{display:grid;gap:6px;text-decoration:none;color:var(--kz-text)}.o-tools a:hover{border-color:var(--kz-line-strong)}.o-tools strong{font-family:var(--kz-font-display);font-size:18px}.o-tools span{font-size:14px;color:var(--kz-text-3)}@media (max-width:900px){.o-duo,.o-fix,.o-res,.o-tools{grid-template-columns:minmax(0,1fr)}.o-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:600px){.o-row .s-btn{flex:1 1 100%}.o-kpis{grid-template-columns:minmax(0,1fr)}.o-table td:nth-child(3),.o-table th:nth-child(3){white-space:nowrap}}@media (prefers-reduced-motion:reduce){.o-wait i{animation:none}}