:root{--bleu: #3498db;--bleu-fonce: #21739f;--vert: #2ecc71;--encre: #2c3e50;--gris-texte: #566070;--fond: #f5f7fa;--blanc: #ffffff;--bordure: #e3e8ee;--erreur: #c0392b;--max-largeur: 1080px}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:var(--encre);background-color:var(--blanc);line-height:1.6}h1,h2,h3{line-height:1.25}h1{font-size:2rem;margin:0 0 .75rem}h2{font-size:1.4rem;margin:2.25rem 0 .75rem}h3{font-size:1.1rem;margin:0 0 .4rem}p{margin:0 0 1rem}a{color:var(--bleu-fonce)}a:hover{color:var(--bleu)}.entete-vitrine{position:sticky;top:0;z-index:10;background:var(--blanc);border-bottom:1px solid var(--bordure)}.entete-interieur{max-width:var(--max-largeur);margin:0 auto;padding:.75rem 1.25rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.marque{font-weight:700;font-size:1.25rem;color:var(--encre);text-decoration:none}.marque strong{color:var(--bleu)}.menu-vitrine{display:flex;align-items:center;gap:1.25rem}.menu-vitrine a{text-decoration:none;color:var(--encre);font-weight:500}.menu-vitrine a:hover{color:var(--bleu-fonce)}.bouton-menu-vitrine{display:none;border:1px solid var(--bordure);background:var(--blanc);border-radius:6px;padding:.35rem .6rem;font-size:1rem;cursor:pointer}.bouton{display:inline-block;padding:.65rem 1.25rem;border-radius:6px;text-decoration:none;font-weight:600;border:1px solid transparent;cursor:pointer;font-size:1rem}.bouton-bleu{background:var(--bleu);color:var(--blanc)}.bouton-bleu:hover{background:var(--bleu-fonce);color:var(--blanc)}.bouton-vert{background:#128048;color:var(--blanc)}.bouton-vert:hover{background:#0f6b3a;color:var(--blanc)}.bouton-contour{border-color:var(--bleu);color:var(--bleu-fonce);background:transparent}.bouton-contour:hover{background:var(--fond)}.bloc-cta{text-align:center;background:var(--fond);border-radius:10px;padding:2rem 1.5rem;margin:2.5rem 0}.bloc-cta p{color:var(--gris-texte);max-width:42rem;margin:0 auto 1rem}.contenu-vitrine{max-width:var(--max-largeur);margin:0 auto;padding:1.5rem 1.25rem 3rem}.filo-ariane{font-size:.85rem;color:var(--gris-texte);padding-top:.5rem}.filo-ariane a{color:var(--gris-texte)}.hero{text-align:center;padding:3.5rem 1.25rem;background:linear-gradient(135deg,#f8f9fa,#e9ecef)}.hero h1{font-size:2.4rem;max-width:46rem;margin:0 auto 1rem}.hero p{font-size:1.2rem;color:var(--gris-texte);max-width:42rem;margin:0 auto 1.75rem}.actions-hero{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.grille-cartes{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.25rem;margin:1.5rem 0}.carte{background:var(--blanc);border:1px solid var(--bordure);border-radius:10px;padding:1.5rem}.carte h3{color:var(--encre)}.carte p{color:var(--gris-texte);margin-bottom:0;font-size:.95rem}.grille-tarifs{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.25rem;margin:2rem 0}.tarif{border:1px solid var(--bordure);border-radius:10px;padding:1.5rem;background:var(--blanc);display:flex;flex-direction:column}.tarif-accent{border-color:var(--bleu);border-width:2px}.tarif h3{margin-bottom:.25rem}.tarif .prix{font-size:2rem;font-weight:700;margin:.5rem 0}.tarif .prix small{font-size:.9rem;font-weight:400;color:var(--gris-texte)}.tarif ul{list-style:none;padding:0;margin:0 0 1.25rem;flex-grow:1}.tarif li{padding-left:1.35rem;position:relative;margin-bottom:.4rem;font-size:.95rem}.tarif li:before{content:"";position:absolute;left:0;top:.55em;width:.45em;height:.45em;border-radius:50%;background:var(--vert)}details{border:1px solid var(--bordure);border-radius:8px;padding:.9rem 1.1rem;margin-bottom:.75rem;background:var(--blanc)}summary{font-weight:600;cursor:pointer}details p{margin:.75rem 0 0;color:var(--gris-texte)}.outil{background:var(--fond);border-radius:10px;padding:1.75rem;max-width:34rem}.champ{margin-bottom:1rem}.champ label{display:block;font-weight:600;margin-bottom:.3rem}.champ input,.champ select{width:100%;padding:.55rem .7rem;border:1px solid #ccd5dd;border-radius:6px;font-size:1rem;font-family:inherit}.champ input:focus,.champ select:focus{outline:2px solid var(--bleu);outline-offset:1px}.ligne-resultat{display:flex;justify-content:space-between;gap:1rem;padding:.5rem 0;border-bottom:1px solid var(--bordure)}.ligne-resultat.total{font-weight:700;border-bottom:none}.resultat-vitrine{margin-top:1.5rem}.resultat-vitrine table{width:100%;border-collapse:collapse;margin-top:.5rem}.resultat-vitrine th,.resultat-vitrine td{text-align:right;padding:.45rem 0;border-bottom:1px solid var(--bordure);font-variant-numeric:tabular-nums}.resultat-vitrine th:first-child,.resultat-vitrine td:first-child{text-align:left}.resultat-numero{font-size:1.5rem;font-weight:700;letter-spacing:.04em;color:var(--bleu-fonce);font-variant-numeric:tabular-nums}.liste-numeros{list-style:none;padding:0;margin:.75rem 0}.liste-numeros li{font-variant-numeric:tabular-nums;padding:.3rem 0;color:var(--encre)}.message-erreur{color:var(--erreur);font-weight:600}.note-outil{font-size:.85rem;color:var(--gris-texte);margin-top:1rem}.fond-plan{position:relative;background-image:linear-gradient(rgba(52,152,219,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(52,152,219,.07) 1px,transparent 1px),linear-gradient(rgba(44,62,80,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(44,62,80,.05) 1px,transparent 1px),linear-gradient(135deg,#f8f9fa,#e9ecef);background-size:192px 192px,192px 192px,48px 48px,48px 48px,100% 100%}.fond-plan .hero{background:none}.fond-plan>*:not(.toile-particules){position:relative;z-index:1}.toile-particules{position:absolute;top:0;left:0;z-index:0;pointer-events:none}.fond-plan .zone-plan{height:170px}.apparait{opacity:0;transform:translateY(16px);transition:opacity .35s ease-out,transform .35s ease-out}.apparait.est-visible{opacity:1;transform:none}@media (prefers-reduced-motion: reduce){.apparait{opacity:1;transform:none;transition:none}}.pied-vitrine{border-top:1px solid var(--bordure);background:var(--fond);margin-top:2rem}.pied-interieur{max-width:var(--max-largeur);margin:0 auto;padding:2rem 1.25rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1.5rem;font-size:.9rem}.pied-vitrine h3{font-size:.95rem}.pied-vitrine ul{list-style:none;padding:0;margin:0}.pied-vitrine li{margin-bottom:.35rem}.pied-vitrine a{text-decoration:none;color:var(--encre)}.pied-vitrine a:hover{color:var(--bleu-fonce)}.pied-mention{padding:1rem 1.25rem;text-align:center;font-size:.8rem;color:var(--gris-texte)}@media screen and (max-width: 767px){.bouton-menu-vitrine{display:inline-flex}.menu-vitrine{display:none;position:absolute;top:100%;left:0;right:0;background:var(--blanc);border-bottom:1px solid var(--bordure);flex-direction:column;padding:.75rem 1.25rem 1.25rem;gap:.9rem}.menu-vitrine.ouvert{display:flex}.hero{padding:2.5rem 1rem}.hero h1{font-size:1.75rem}.hero p{font-size:1.05rem}.contenu-vitrine{padding:1rem 1rem 2rem}.fond-plan .zone-plan{height:110px}.outil{padding:1.1rem}.ligne-resultat{flex-wrap:wrap}}.modale-connexion-fond{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;display:flex;align-items:center;justify-content:center;padding:1rem;z-index:8000}.modale-connexion{position:relative;background:var(--fond, #fff);border-radius:10px;box-shadow:0 18px 50px #0f172a40;padding:1.6rem 1.5rem 1.2rem;width:100%;max-width:380px}.modale-connexion h2{margin:0 0 1rem;font-size:1.25rem}.modale-connexion-fermer{position:absolute;top:.6rem;right:.6rem;border:none;background:transparent;font-size:1.1rem;cursor:pointer;padding:.3rem .5rem;border-radius:6px}.modale-connexion-formulaire{display:flex;flex-direction:column;gap:.8rem}.modale-connexion-formulaire label{display:flex;flex-direction:column;gap:.3rem;font-size:.95rem;font-weight:600}.modale-connexion-formulaire input{padding:.55rem .7rem;border:1px solid #cbd5e1;border-radius:6px;font-size:1rem}.modale-connexion-erreur{color:#b91c1c;font-size:.9rem;margin:0}.modale-connexion-liens{display:flex;justify-content:space-between;gap:.5rem;margin:1rem 0 0;font-size:.9rem}.icone-metier{display:block;width:44px;height:44px;color:var(--bleu-fonce);margin-bottom:.8rem}.bouton{transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease,color .18s ease}.bouton:hover{transform:translateY(-2px);box-shadow:0 8px 20px #0f172a1f}.bouton:active{transform:translateY(0)}a:focus-visible,button:focus-visible{outline:2px solid var(--bleu-fonce);outline-offset:2px;border-radius:4px}@media (prefers-reduced-motion: reduce){.bouton,.bouton:hover{transform:none;box-shadow:none;transition:none}}.menu-vitrine details.menu-metiers{position:relative;display:inline-block}.menu-vitrine details.menu-metiers summary{cursor:pointer;list-style:none;display:inline-block;color:inherit}.menu-vitrine details.menu-metiers summary::-webkit-details-marker{display:none}.menu-vitrine details.menu-metiers summary:after{content:" ▾";font-size:.8em}.menu-vitrine details.menu-metiers[open] summary:after{content:" ▴"}.menu-vitrine details.menu-metiers ul{position:absolute;top:100%;left:0;margin:.4rem 0 0;padding:.4rem 0;background:#fff;border:1px solid #e2e8f0;border-radius:8px;min-width:230px;box-shadow:0 12px 30px #0f172a1f;list-style:none;z-index:50}.menu-vitrine details.menu-metiers ul a{display:block;padding:.45rem 1rem}.menu-vitrine details.menu-metiers ul a:hover{background:#f1f5f9}@media (max-width: 900px){.menu-vitrine details.menu-metiers ul{position:static;background:transparent;border:none;box-shadow:none;padding:0 0 0 .8rem;min-width:0}}
