.devis{--devis-pad:clamp(18px,3.2vw,36px);position:relative;color:var(--ink);background:var(--paper);border:var(--bord) solid var(--ink);border-radius:var(--rayon-lg);box-shadow:0 8px 0 var(--ink),0 18px 40px rgb(0 0 0/.22);padding:var(--devis-pad);font-family:var(--font-texte);text-align:left}.devis--compact{--devis-pad:clamp(16px,2.4vw,24px)}.devis-progres{margin-bottom:22px}.devis-progres__etapes{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:8px;gap:8px;margin:0 0 12px;padding:0;list-style:none}.devis-progres__etapes li{display:flex;align-items:center;gap:8px;font-size:var(--fs-14);font-weight:700;color:var(--muted-clair);min-width:0}.devis-progres__num{flex:none;display:grid;place-items:center;width:30px;height:30px;border:var(--bord) solid var(--ink);border-radius:50%;background:var(--paper-2);font-family:var(--font-titre);font-weight:800;color:var(--ink);box-shadow:0 3px 0 var(--ink);transition:background-color .25s ease,transform .3s var(--ease-ressort)}.devis-progres__etapes .est-courant{color:var(--ink)}.devis-progres__etapes .est-courant .devis-progres__num{background:var(--lime);transform:translateY(-2px) scale(1.08)}.devis-progres__etapes .est-fait .devis-progres__num{background:var(--vert)}.devis-progres__libelle{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.devis-progres__rail{position:relative;height:18px;border:var(--bord) solid var(--ink);border-radius:999px;background:repeating-linear-gradient(-45deg,rgb(11 18 16/.06) 0 8px,transparent 8px 16px),var(--paper-2);box-shadow:inset 0 3px 0 rgb(11 18 16/.12);overflow:hidden}.devis-progres__remplissage{position:relative;height:100%;border-right:var(--bord) solid var(--ink);border-radius:999px;background:linear-gradient(180deg,#5fe485 0 40%,var(--vert) 40%);box-shadow:inset 0 -4px 0 var(--vert-fonce);transition:width .6s var(--ease-ressort)}.devis-progres__bille{position:absolute;right:4px;top:50%;width:8px;height:8px;margin-top:-4px;border-radius:50%;background:var(--paper);opacity:.8}.devis-form__titre{margin:0 0 18px;font-family:var(--font-titre);font-size:var(--fs-28);font-weight:800;line-height:1.1;letter-spacing:-.02em;outline:none}.devis-form__compteur{display:block;font-family:var(--font-texte);font-size:var(--fs-14);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted-clair);margin-bottom:4px}.devis--compact .devis-form__titre{font-size:var(--fs-22)}.devis-etape{display:grid;grid-gap:20px;gap:20px;animation:devis-entree .35s var(--ease-sortie) both}@keyframes devis-entree{0%{opacity:0;transform:translateX(18px)}}.devis-champ{min-width:0;margin:0;padding:0;border:0}.devis-label{display:block;margin:0 0 8px;padding:0;font-weight:800;font-size:var(--fs-16)}.devis-facultatif{font-weight:500;color:var(--muted-clair)}.devis-aide{margin:6px 0 0;font-size:var(--fs-14);color:var(--muted-clair)}.devis-champ .devis-aide+.devis-photos,.devis-label+.devis-aide{margin-top:0;margin-bottom:10px}.devis-erreur{margin:6px 0 0;font-size:var(--fs-14);font-weight:700;color:#b0122f}.devis-erreur:empty{display:none}.devis-grille{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px 18px;gap:16px 18px}.devis-champ--large{grid-column:1/-1}@media (max-width:600px){.devis-grille{grid-template-columns:1fr}}.devis-input{width:100%;min-height:52px;padding:12px 14px;border:var(--bord) solid var(--ink);border-radius:var(--rayon);background:#fff;color:var(--ink);font:inherit;font-size:var(--fs-18);box-shadow:inset 0 3px 0 rgb(11 18 16/.08);transition:box-shadow .15s ease,border-color .15s ease}.devis-input::placeholder{color:#7a877f}.devis-input:focus-visible{outline:3px solid var(--lime);outline-offset:2px;box-shadow:inset 0 3px 0 rgb(11 18 16/.08),0 0 0 5px var(--ink)}.devis-input[aria-invalid=true]{border-color:#b0122f;background:#fff4f6}.devis-input--cp{max-width:180px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:800;letter-spacing:.08em}.devis-textarea{resize:vertical;min-height:110px;line-height:1.5}.devis-ajout input,.devis-consentement input,.devis-nuisible input,.devis-pilule input,.devis-urgence input{position:absolute;opacity:0;width:1px;height:1px;margin:0}.devis-nuisibles{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));grid-gap:12px;gap:12px}.devis--compact .devis-nuisibles{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:10px}.devis-nuisible{position:relative;display:grid;cursor:pointer}.devis-nuisible__carte{display:grid;justify-items:center;align-content:start;height:100%;grid-gap:6px;gap:6px;min-height:112px;padding:12px 8px 10px;border:var(--bord) solid var(--ink);border-radius:var(--rayon);background:color-mix(in srgb,var(--c) 18%,var(--paper));box-shadow:0 5px 0 var(--ink);text-align:center;transition:transform .18s var(--ease-ressort),box-shadow .18s var(--ease-ressort),background-color .2s ease}.devis--compact .devis-nuisible__carte{min-height:96px}.devis-nuisible:hover .devis-nuisible__carte{transform:translateY(-2px);box-shadow:0 7px 0 var(--ink)}.devis-nuisible input:checked+.devis-nuisible__carte{background:var(--c);transform:translateY(4px) scale(.98,.97);box-shadow:0 1px 0 var(--ink)}.devis-ajout:focus-within,.devis-consentement input:focus-visible~.devis-consentement__case,.devis-nuisible input:focus-visible+.devis-nuisible__carte,.devis-pilule input:focus-visible+span,.devis-urgence input:focus-visible+.devis-urgence__carte{outline:3px solid var(--lime);outline-offset:3px}.devis-nuisible input[aria-invalid=true]+.devis-nuisible__carte{border-color:#b0122f}.devis-nuisible__img{width:64px!important;height:64px!important;object-fit:contain;padding:5px;border-radius:12px;background:radial-gradient(70% 60% at 50% 45%,rgb(255 255 255/.07),transparent 70%),#050807;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--c) 60%,transparent),0 1px 0 rgb(255 255 255/.25)}.devis--compact .devis-nuisible__img{width:52px!important;height:52px!important}.devis-nuisible__pastille{display:grid;place-items:center;width:56px;height:56px;margin:4px 0;border:var(--bord) solid var(--ink);border-radius:50%;background:var(--c);font-family:var(--font-titre);font-size:1.75rem;font-weight:800}.devis-nuisible__nom{font-weight:800;font-size:var(--fs-14);line-height:1.2}.devis-pilules{display:flex;flex-wrap:wrap;gap:10px}.devis-pilule{position:relative;cursor:pointer}.devis-pilule span{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 16px;border:var(--bord) solid var(--ink);border-radius:999px;background:var(--paper-2);font-weight:700;box-shadow:0 4px 0 var(--ink);transition:transform .18s var(--ease-ressort),box-shadow .18s var(--ease-ressort),background-color .2s ease}.devis-pilule:hover span{transform:translateY(-1px)}.devis-pilule input:checked+span{background:var(--lime);transform:translateY(3px);box-shadow:0 1px 0 var(--ink)}.devis-pilule--case input:checked+span:before{content:"✓";font-weight:800}.devis-urgences{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:12px;gap:12px}@media (max-width:600px){.devis-urgences{grid-template-columns:1fr}}.devis-urgence{position:relative;cursor:pointer;--c:var(--vert)}.devis-urgence--jour{--c:var(--fourmi)}.devis-urgence--soir{--c:var(--punaise)}.devis-urgence__carte{display:grid;grid-gap:2px;gap:2px;min-height:64px;padding:12px 14px;border:var(--bord) solid var(--ink);border-radius:var(--rayon);background:var(--paper-2);box-shadow:0 5px 0 var(--ink);transition:transform .18s var(--ease-ressort),box-shadow .18s var(--ease-ressort),background-color .2s ease}.devis-urgence input:checked+.devis-urgence__carte{background:var(--c);transform:translateY(4px);box-shadow:0 1px 0 var(--ink)}.devis-urgence__libelle{font-weight:800}.devis-urgence__detail{font-size:var(--fs-14);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.devis-photos{display:flex;flex-wrap:wrap;gap:12px}.devis-ajout,.devis-photo{position:relative;width:104px;height:104px;margin:0;border:var(--bord) solid var(--ink);border-radius:var(--rayon);overflow:hidden}.devis-photo img{width:100%;height:100%;object-fit:cover;display:block}.devis-photo__repli{display:grid;place-items:center;align-content:center;grid-gap:4px;gap:4px;height:100%;background:var(--paper-2);font-weight:800;font-size:var(--fs-14)}.devis-photo figcaption{position:absolute;left:0;bottom:0;padding:2px 6px;border-top-right-radius:8px;background:var(--ink);color:var(--paper);font-size:.75rem;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.devis-photo__retirer{position:absolute;top:4px;right:4px;display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;background:transparent;cursor:pointer;color:var(--ink)}.devis-photo__retirer:before{content:"";position:absolute;inset:8px;z-index:-1;border:var(--bord) solid var(--ink);border-radius:50%;background:var(--paper)}.devis-photo__retirer svg{position:relative}.devis-photo__retirer:focus-visible{outline:3px solid var(--lime);outline-offset:-4px}.devis-ajout{display:grid;place-items:center;align-content:center;grid-gap:2px;gap:2px;border-style:dashed;background:var(--paper-2);font-weight:800;font-size:var(--fs-14);cursor:pointer;transition:background-color .2s ease,transform .18s var(--ease-ressort)}.devis-ajout:hover{background:color-mix(in srgb,var(--lime) 40%,var(--paper-2));transform:translateY(-2px)}.devis-ajout.est-occupe{cursor:progress;opacity:.7}.devis-ajout__plus{font-family:var(--font-titre);font-size:2rem;line-height:1}.devis-consentement{position:relative;display:grid;grid-template-columns:auto 1fr;grid-gap:12px;gap:12px;align-items:start;font-size:var(--fs-14);line-height:1.5;cursor:pointer}.devis-consentement__case{display:grid;place-items:center;width:30px;height:30px;margin:2px;border:var(--bord) solid var(--ink);border-radius:8px;background:#fff;box-shadow:0 3px 0 var(--ink);color:transparent;transition:background-color .15s ease,transform .18s var(--ease-ressort)}.devis-consentement input:checked~.devis-consentement__case{background:var(--vert);color:var(--ink);transform:translateY(2px);box-shadow:0 1px 0 var(--ink)}.devis-consentement input[aria-invalid=true]~.devis-consentement__case{border-color:#b0122f;background:#fff4f6}.devis-zone{margin:10px 0 0;font-size:var(--fs-14);font-weight:700}.devis-zone--ok{display:flex;align-items:center;gap:6px;color:var(--vert-texte)}.devis-zone--hors{padding:12px 14px;border:var(--bord) solid var(--ink);border-radius:var(--rayon);background:color-mix(in srgb,var(--fourmi) 35%,var(--paper));font-weight:500;color:var(--ink)}.devis-zone--hors p{margin:0}.devis-zone--hors p+p{margin-top:6px;font-weight:700}.devis-piege{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.devis-erreur-envoi{display:flex;gap:8px;align-items:flex-start;margin-top:18px;padding:12px 14px;border:var(--bord) solid var(--ink);border-radius:var(--rayon);background:color-mix(in srgb,var(--punaise) 22%,var(--paper));font-weight:700}.devis-erreur-envoi:empty{display:none}.devis-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:24px}.devis-pied{margin:18px 0 0;font-size:var(--fs-14);color:var(--muted-clair)}.devis-lien-texte,.devis-pied a{font-weight:800}.devis-lien,.devis-lien-texte,.devis-pied a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}.devis-lien{min-height:44px;margin-top:16px;padding:8px 4px;border:0;background:none;font:inherit;font-weight:800;cursor:pointer}.devis-lien-texte:focus-visible,.devis-lien:focus-visible,.devis-pied a:focus-visible{outline:3px solid var(--lime);outline-offset:3px;border-radius:4px}.devis--succes{overflow:hidden;text-align:center;padding-top:calc(var(--devis-pad) + 8px)}.devis-tampon{display:inline-grid;place-items:center;margin:0 auto 14px;padding:10px 26px;border:5px solid var(--vert-fonce);border-radius:14px;color:var(--vert-texte);font-family:var(--font-titre);font-size:var(--fs-40);font-weight:800;letter-spacing:.12em;text-transform:uppercase;transform:rotate(-8deg);box-shadow:inset 0 0 0 3px color-mix(in srgb,var(--vert-fonce) 30%,transparent);-webkit-mask-image:radial-gradient(circle at 30% 40%,#000 60%,rgb(0 0 0/.75) 61%,#000 75%);mask-image:radial-gradient(circle at 30% 40%,#000 60%,rgb(0 0 0/.75) 61%,#000 75%);animation:devis-tampon .5s var(--ease-ressort) both}@keyframes devis-tampon{0%{opacity:0;transform:rotate(-20deg) scale(2.4)}60%{opacity:1;transform:rotate(-6deg) scale(.92)}to{transform:rotate(-8deg) scale(1)}}.devis-succes__titre{margin:0 0 8px;font-family:var(--font-titre);font-size:var(--fs-28);font-weight:800;outline:none}.devis-succes__rappel{margin:0 0 18px;font-size:var(--fs-18)}.devis-recap{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));grid-gap:10px;gap:10px;margin:0 auto 22px;max-width:640px;text-align:left}.devis-recap div{padding:10px 12px;border:var(--bord) solid var(--ink);border-radius:12px;background:var(--paper-2)}.devis-recap dt{font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted-clair)}.devis-recap dd{margin:2px 0 0;font-weight:800}.devis-succes__urgent{display:grid;justify-items:center;grid-gap:10px;gap:10px}.devis-succes__urgent p{margin:0;font-weight:700}@media (prefers-reduced-motion:reduce){.devis-etape,.devis-tampon{animation:none}.devis-progres__remplissage{transition:none}}@media (max-width:480px){.devis-progres__libelle{display:none}.devis-progres__etapes .est-courant .devis-progres__libelle{display:inline}.devis-progres__etapes{grid-template-columns:auto auto 1fr}.devis-nuisibles{grid-template-columns:repeat(3,1fr);gap:8px}.devis-nuisible__carte{min-height:96px;padding:8px 4px}.devis-nuisible__img{width:48px!important;height:48px!important}}