.diag{padding-block:clamp(3.5rem,9vw,7rem)}.diag .diag-inner{max-width:46rem}.diag [data-screen=intro]{text-align:center}.diag [data-screen=intro] .eyebrow{margin-bottom:2rem}.diag .diag-title{margin-bottom:1.75rem;font-size:clamp(2.1rem,5vw,3.35rem);line-height:1.14}.diag [data-screen=intro] .geo-lead{margin-inline:auto;max-width:54ch;margin-bottom:0}.diag .promises{border-top:1px solid var(--hairline);color:var(--text-muted);text-align:left;gap:1.15rem;max-width:56ch;margin:3.25rem auto 0;padding:2.25rem 0 0;list-style:none;display:grid}.diag .promises li{padding-left:1.6rem;font-size:.97rem;position:relative}.diag .promises li:before{content:"";border:1px solid var(--gold);border-radius:50%;width:7px;height:7px;position:absolute;top:.55em;left:0}.diag .promises strong{color:var(--text);font-weight:500}.diag .diag-ctas{flex-wrap:wrap;gap:.9rem;margin-top:3rem;display:flex}.diag [data-screen=intro] .diag-ctas{justify-content:center}.diag [data-screen=intro] .btn{padding-inline:2.4rem}.diag .diag-meta{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--text-muted);opacity:.75;margin-top:1.75rem;font-size:.7rem}.diag .screen{display:none}.diag .screen.is-on{animation:.45s cubic-bezier(.4,0,.2,1) both diag-in;display:block}@keyframes diag-in{0%{opacity:0;transform:translateY(12px)}}.diag .progress{align-items:center;gap:1.25rem;margin-bottom:clamp(2.75rem,6vw,4rem);display:flex}.diag .progress-label{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);white-space:nowrap;font-size:.72rem}.diag .progress-label b{color:var(--gold);font-weight:400}.diag .progress-bar{background:var(--hairline);flex:1;height:1px;overflow:hidden}.diag .progress-bar i{background:var(--gold);transform-origin:0;height:100%;transition:transform .42s cubic-bezier(.4,0,.2,1);display:block;transform:scaleX(.06)}.diag .step{display:none}.diag .step.is-on{animation:.34s both diag-in;display:block}.diag .step-block{font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--gold);border:1px solid var(--gold-faint);border-radius:var(--radius-pill);margin-bottom:1.5rem;padding:.4em 1em;font-size:.66rem;display:inline-block}.diag .step-q{max-width:24ch;margin-bottom:.85rem;font-size:clamp(1.45rem,3.2vw,2.05rem);line-height:1.22}.diag .step-help{color:var(--text-muted);max-width:56ch;margin-bottom:2.25rem;font-size:.94rem;line-height:1.7}.diag .choices{gap:.75rem;display:grid}.diag .choice{border:1px solid var(--hairline);border-radius:var(--radius-field);cursor:pointer;color:var(--text-muted);align-items:center;gap:.9rem;padding:1.15rem 1.35rem;transition:border-color .18s,color .18s,background .18s;display:flex}.diag .choice:hover{border-color:var(--gold-soft);color:var(--text)}.diag .choice:has(input:checked){border-color:var(--gold);color:var(--ivory);background:#f0d8900d}.diag .choice input{accent-color:var(--gold);flex:none;margin:0}.diag .choice-note{color:var(--text-muted);margin-top:.15rem;font-size:.82rem;display:block}.diag input[type=text],.diag input[type=email],.diag input[type=tel],.diag input[type=number],.diag select,.diag textarea{border:1px solid var(--hairline);border-radius:var(--radius-field);color:var(--text);font-family:var(--font-body);background:#eeebe40a;width:100%;padding:.8rem 1rem;font-size:1rem;transition:border-color .16s}input:focus,select:focus,.diag textarea:focus{border-color:var(--gold-soft);outline:none}.diag select option{background:var(--navy)}.diag .field{gap:.45rem;margin-bottom:1.1rem;display:grid}.diag .field-label{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);font-size:.7rem}.diag .field-label em{text-transform:none;letter-spacing:0;opacity:.7;font-style:normal}.diag .rate-adjust{border-top:1px solid var(--hairline);margin-top:1.1rem;padding-top:1.1rem}.diag .form-row{grid-template-columns:1fr 1fr;gap:1.1rem;display:grid}.diag .diag-nav{border-top:1px solid var(--hairline);gap:.9rem;margin-top:2.75rem;padding-top:2rem;display:flex}.diag .form-status{min-height:1.4em;color:var(--text-muted);margin-top:.9rem;font-size:.92rem}.diag .form-status.is-error{color:#e8a9a0}.diag .form-status.is-success{color:var(--gold)}.diag .analysing{text-align:center;padding-block:clamp(4rem,14vw,8rem)}.diag .analyse-ring{width:120px;margin:0 auto 2.75rem}.diag .analyse-ring svg,.diag .score-ring svg{width:100%;height:auto;transform:rotate(-90deg)}.diag .ring-bg{fill:none;stroke:var(--hairline);stroke-width:1.5px}.diag .ring-spin{fill:none;stroke:var(--gold);stroke-width:1.5px;stroke-linecap:round;stroke-dasharray:339;stroke-dashoffset:250px;transform-origin:50%;animation:1.6s linear infinite ring-turn}@keyframes ring-turn{to{transform:rotate(360deg)}}.diag .analyse-title{margin-bottom:.6rem;font-size:1.6rem}.diag .analyse-status{color:var(--text-muted);font-size:.95rem;transition:opacity .24s}.diag .score-block{flex-wrap:wrap;align-items:center;gap:clamp(1.75rem,4.5vw,3rem);margin:2.5rem 0 1.75rem;display:flex}.diag .score-ring{flex:none;width:128px;position:relative}.diag .ring-score{fill:none;stroke:var(--gold);stroke-width:2.5px;stroke-linecap:round;stroke-dasharray:339;stroke-dashoffset:339px;transition:stroke-dashoffset 1.2s cubic-bezier(.4,0,.2,1)}.diag .score-value{font-family:var(--font-display);color:var(--ivory);place-items:center;font-size:2.3rem;display:grid;position:absolute;inset:0;transform:translateY(-6px)}.diag .score-unit{text-align:center;font-family:var(--font-mono);letter-spacing:.12em;color:var(--text-muted);font-size:.62rem;position:absolute;inset:auto 0 22px}.diag .score-text{flex:1;min-width:15rem}.diag .verdict{margin-bottom:.7rem;font-size:clamp(1.3rem,2.8vw,1.75rem)}.diag .verdict-phrase{color:var(--text-muted);max-width:52ch;font-size:.97rem}.diag .score-detail{border:1px solid var(--hairline);border-radius:var(--radius-card);margin-bottom:2.5rem;padding-inline:1.3rem}.diag .score-detail summary{cursor:pointer;font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);padding:.95rem 0;font-size:.72rem;list-style:none}.diag .score-detail summary::-webkit-details-marker{display:none}.diag .score-detail summary:hover{color:var(--ivory)}.diag .score-detail ul{color:var(--text-muted);gap:.55rem;margin:0;padding:0 0 1.1rem;font-size:.9rem;list-style:none;display:grid}.diag .cost-card{background:var(--navy-raised);border-radius:var(--radius-card);border:1px solid #f0d89029;margin-bottom:1rem;padding:clamp(1.6rem,4vw,2.25rem)}.diag .cost-label{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin-bottom:.7rem;font-size:.68rem}.diag .cost-value{font-family:var(--font-display);color:var(--ivory);margin-bottom:.8rem;font-size:clamp(2.2rem,7vw,3.4rem);line-height:1}.diag .cost-formula{font-family:var(--font-mono);color:var(--text-muted);font-size:.76rem;line-height:1.7}.diag .report-title{margin-top:3rem}.diag .diag-ref{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--text-muted);margin-top:-.4rem;margin-bottom:1.8rem;font-size:.72rem}.diag .diag-ref b{color:var(--gold);font-weight:400}.diag .devis-panel{background:var(--navy-raised);border-radius:var(--radius-card);border:1px solid #f0d89029;margin-top:1.8rem;padding:clamp(1.5rem,4vw,2.25rem);animation:.32s both devis-open}@keyframes devis-open{0%{opacity:0;transform:translateY(-8px)}}@media (prefers-reduced-motion:reduce){.diag .devis-panel{animation:none}}.diag .devis-title{font-family:var(--font-display);color:var(--ivory);margin-bottom:.6rem;font-size:clamp(1.2rem,3vw,1.5rem)}.diag .devis-intro{color:var(--text-muted);max-width:54ch;margin-bottom:1.8rem;font-size:.94rem}.diag .devis-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.1rem;display:grid}.diag .devis-field{align-content:start;gap:.45rem;display:grid}.diag .devis-field--wide{grid-column:1/-1}.diag .devis-field>span{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);font-size:.7rem}.diag .devis-field>span i{text-transform:none;letter-spacing:0;opacity:.7;font-style:normal}.diag .devis-field--siret>span{color:var(--gold)}.diag .devis-field--siret input{font-family:var(--font-mono);letter-spacing:.1em}.diag .devis-hint{font-family:var(--font-mono);color:var(--text-muted);min-height:1.2em;font-size:.72rem;font-style:normal;line-height:1.6}.diag .devis-hint.is-ok{color:var(--gold)}.diag .devis-hint.is-warn{color:#e0b980}.diag .devis-legal{color:var(--text-muted);max-width:62ch;margin:1.6rem 0 1.5rem;font-size:.8rem;line-height:1.7}.diag .devis-confirm{background:var(--navy-raised);border:1px solid var(--gold-soft);border-radius:var(--radius-card);margin-top:1.8rem;padding:clamp(1.5rem,4vw,2.25rem)}.diag .devis-confirm-title{font-family:var(--font-display);color:var(--ivory);margin-bottom:1rem;font-size:clamp(1.2rem,3vw,1.5rem)}.diag .devis-confirm-ref{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--text-muted);margin-bottom:1rem;font-size:.72rem}.diag .devis-confirm-ref b{border:1px solid var(--gold-soft);border-radius:var(--radius-pill);color:var(--gold);margin-left:.5rem;padding:.35rem .8rem;font-size:.9rem;font-weight:400;display:inline-block}.diag .devis-confirm-text{color:var(--text-muted);max-width:58ch;font-size:.94rem}@media (width<=620px){.diag .devis-grid{grid-template-columns:1fr}}.diag .roi-card{background:var(--navy-raised);border-radius:var(--radius-card);border:1px solid #f0d89029;padding:clamp(1.6rem,4vw,2.25rem)}.diag .roi-grid{border-radius:var(--radius-field);background:#f0d89024;border:1px solid #f0d89024;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:0 0 1.4rem;padding:0;list-style:none;display:grid;overflow:hidden}.diag .roi-grid li{background:var(--navy-raised);flex-direction:column;gap:.45rem;padding:clamp(1.1rem,3vw,1.5rem);display:flex}.diag .roi-k{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--text-muted);font-size:.66rem}.diag .roi-v{font-family:var(--font-display);color:var(--ivory);font-size:clamp(1.35rem,3.6vw,1.85rem);font-weight:400;line-height:1.1}.diag .roi-grid .is-gold .roi-v{color:var(--gold)}.diag .roi-u{font-family:var(--font-mono);color:var(--text-muted);font-size:.7rem;font-style:normal}@media (width<=620px){.diag .roi-grid{grid-template-columns:1fr}}.diag .repartition{gap:.7rem;margin:0;padding:0;list-style:none;display:grid}.diag .repartition li{border-bottom:1px solid var(--hairline);color:var(--text-muted);grid-template-columns:1fr auto;align-items:baseline;gap:.6rem 1rem;padding-bottom:.7rem;font-size:.95rem;display:grid}.diag .repartition b{color:var(--ivory);font-weight:500;font-family:var(--font-mono);font-size:.85rem}.diag .repartition .rep-bar{background:var(--hairline);grid-column:1/-1;height:2px}.diag .repartition .rep-bar i{background:var(--gold-soft);height:100%;display:block}.diag .chantiers{gap:1rem;margin:0;padding:0;list-style:none;display:grid}.diag .chantier{border:1px solid var(--hairline);border-radius:var(--radius-card);padding:1.4rem 1.5rem;transition:border-color .22s}.diag .chantier:hover{border-color:var(--gold-soft)}.diag .chantier-rank{font-family:var(--font-mono);letter-spacing:.18em;color:var(--gold);margin-bottom:.5rem;font-size:.68rem}.diag .chantier h3{margin-bottom:.5rem;font-size:1.25rem}.diag .chantier p{color:var(--text-muted);margin-bottom:.9rem;font-size:.95rem}.diag .tags{flex-wrap:wrap;gap:.5rem;display:flex}.diag .tag{font-family:var(--font-mono);letter-spacing:.06em;border:1px solid var(--hairline);border-radius:var(--radius-pill);color:var(--text-muted);padding:.3rem .8rem;font-size:.7rem}.diag .tag.is-gold{border-color:var(--gold-soft);color:var(--gold)}.diag .roadmap{gap:0;margin:0;padding:0;list-style:none;display:grid}.diag .roadmap li{border-bottom:1px solid var(--hairline);color:var(--text-muted);grid-template-columns:5.5rem 1fr;gap:1rem;padding:1rem 0;font-size:.95rem;display:grid}.diag .roadmap b{font-family:var(--font-mono);letter-spacing:.12em;color:var(--gold);font-size:.72rem;font-weight:400}.diag .report-cta{border-top:1px solid var(--hairline);margin-top:3.5rem;padding-top:2rem}.diag .report-cta h2{margin-bottom:.8rem;font-size:clamp(1.5rem,3vw,2rem)}.diag .report-cta>p{color:var(--text-muted);max-width:52ch}.diag .restart{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);cursor:pointer;background:0 0;border:0;margin-top:1.5rem;padding:0;font-size:.72rem;display:block}.diag .restart:hover{color:var(--ivory)}.diag .report-foot{color:var(--text-muted);opacity:.8;margin-top:2.5rem;font-size:.8rem}@media (width<=640px){.diag .form-row{grid-template-columns:1fr}.diag .roadmap li{grid-template-columns:1fr;gap:.3rem}}@media (prefers-reduced-motion:reduce){.diag .ring-spin{animation:none}}
