{"id":120,"date":"2026-04-24T13:49:34","date_gmt":"2026-04-24T13:49:34","guid":{"rendered":"https:\/\/www.mosia.fr\/?page_id=120"},"modified":"2026-07-07T12:47:38","modified_gmt":"2026-07-07T12:47:38","slug":"formulaire-type-erp","status":"publish","type":"page","link":"https:\/\/www.mosia.fr\/?page_id=120","title":{"rendered":"Formulaire type erp"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"120\" class=\"elementor elementor-120\">\n\t\t\t\t<div class=\"elementor-element elementor-element-57599f e-con-full e-flex e-con e-parent\" data-id=\"57599f\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-a13c6f0 elementor-widget elementor-widget-wp-widget-custom_html\" data-id=\"a13c6f0\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"wp-widget-custom_html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"textwidget custom-html-widget\">\r\n\r\n\r\n\r\n\r\n<title>Dossier ERP \u2014 MOSIA<\/title>\r\n\r\n\r\n\r\n\r\n\r\n\r\n<div class=\"mosia-wrap\">\r\n\r\n  <!-- HEADER -->\r\n  <div class=\"mosia-header\">\r\n    <div class=\"mosia-brand\"><div>\r\n        <div class=\"mosia-brand-text\">MOSIA<\/div>\r\n        <div class=\"mosia-brand-sub\">S\u00e9curit\u00e9 incendie &amp; Accessibilit\u00e9 \u2014 Dossier ERP<\/div>\r\n      <\/div>\r\n    <\/div>\r\n    <div class=\"mosia-header-meta\">\r\n      Une question ? <strong style=\"color:var(--teal-dark)\">06 83 08 82 85<\/strong><br>\r\n      agence.mosia@gmail.com\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <div class=\"mosia-note\">\r\n    Ce formulaire reprend l'ensemble des \u00e9l\u00e9ments n\u00e9cessaires \u00e0 la constitution de votre dossier ERP (s\u00e9curit\u00e9 incendie et accessibilit\u00e9). Comptez environ <strong>15 \u00e0 20 minutes<\/strong>. Vous pouvez passer les sections qui ne concernent pas votre \u00e9tablissement, et joindre vos photos\/plans \u00e0 la fin. Vos r\u00e9ponses ne sont pas perdues si vous changez d'\u00e9tape.\r\n  <\/div>\r\n\r\n  <!-- PROGRESS -->\r\n  <div class=\"mosia-progress\">\r\n    <div class=\"mosia-progress-label\">\r\n      <span>\u00c9tape <strong id=\"mosia-step-current\">1<\/strong> \/ <span id=\"mosia-step-total\">11<\/span><\/span>\r\n      <span id=\"mosia-step-name\">Demandeur<\/span>\r\n    <\/div>\r\n    <div class=\"mosia-trail\" id=\"mosia-trail\"><\/div>\r\n  <\/div>\r\n\r\n  \r\n    <div class=\"mosia-card\" id=\"mosiaCard\">\r\n      <!-- STEPS injected here -->\r\n    <\/div>\r\n  \r\n\r\n<\/div>\r\n\r\n<!-- Le JS est charg\u00e9 via WPCode (voir formulaire-mosia.js) -->\r\n\r\n\r\ndocument.addEventListener('DOMContentLoaded', function() {\r\n\r\n\/* =========================================================\r\n   MOSIA \u2014 Dossier ERP \u2014 Formulaire multi-\u00e9tapes\r\n   G\u00e9n\u00e8re les \u00e9tapes en JS pour garder le balisage maintenable.\r\n   Tous les champs sont nomm\u00e9s mosia_xxx afin d'\u00eatre facilement\r\n   remapp\u00e9s vers des shortcodes Contact Form 7 (voir README livr\u00e9).\r\n   ========================================================= *\/\r\n\r\n\/* Lien \"File Request\" pCloud \u2014 d\u00e9p\u00f4t s\u00e9curis\u00e9 de photos\/plans sans\r\n   exposer aucun jeton d'acc\u00e8s au compte pCloud de MOSIA. *\/\r\nconst PCLOUD_UPLOAD_LINK = \"https:\/\/u.pcloud.com\/#page=puplink&amp;code=INTXZxXzdv0TdAk73LV3mLDyqU06oxcG7\";\r\n\r\nconst STEPS = [\r\n{\r\n  key:\"demandeur\", eyebrow:\"Section 1\", title:\"Le demandeur\",\r\n  desc:\"Coordonn\u00e9es de la personne ou structure b\u00e9n\u00e9ficiaire de l'autorisation.\",\r\n  html:`\r\n    <div class=\"mosia-row\">\r\n      <div class=\"mosia-field-group\">\r\n        <label class=\"mosia-label\">Nom et pr\u00e9nom <span class=\"req\">*<\/span><\/label>\r\n        \r\n      <\/div>\r\n      <div class=\"mosia-field-group\">\r\n        <label class=\"mosia-label\">Pour les personnes morales \u2014 nom du repr\u00e9sentant l\u00e9gal<span class=\"opt\">(facultatif)<\/span><\/label>\r\n        \r\n      <\/div>\r\n    <\/div>\r\n    <div class=\"mosia-field-group\">\r\n      <label class=\"mosia-label\">Adresse <span class=\"req\">*<\/span><\/label>\r\n      \r\n    <\/div>\r\n    <div class=\"mosia-row cols-3\">\r\n      <div class=\"mosia-field-group\">\r\n        <label class=\"mosia-label\">Commune <span class=\"req\">*<\/span><\/label>\r\n        \r\n      <\/div>\r\n      <div class=\"mosia-field-group\">\r\n        <label class=\"mosia-label\">Code postal <span class=\"req\">*<\/span><\/label>\r\n        \r\n      <\/div>\r\n      <div class=\"mosia-field-group\"><\/div>\r\n    <\/div>\r\n    <div class=\"mosia-row\">\r\n      <div class=\"mosia-field-group\">\r\n        <label class=\"mosia-label\">T\u00e9l\u00e9phone fixe<\/label>\r\n        \r\n      <\/div>\r\n      <div class=\"mosia-field-group\">\r\n        <label class=\"mosia-label\">T\u00e9l\u00e9phone portable <span class=\"req\">*<\/span><\/label>\r\n        \r\n      <\/div>\r\n    <\/div>\r\n    <div class=\"mosia-field-group\">\r\n      <label class=\"mosia-label\">Adresse e-mail <span class=\"req\">*<\/span><\/label>\r\n      \r\n    <\/div>\r\n  `\r\n},\r\n{\r\n  key:\"etablissement\", eyebrow:\"Section 2\", title:\"L'\u00e9tablissement\",\r\n  desc:\"Informations concernant l'\u00e9tablissement recevant du public (ERP).\",\r\n  html:`\r\n    <div class=\"mosia-field-group\">\r\n      <label class=\"mosia-label\">Nom de l'\u00e9tablissement <span class=\"req\">*<\/span><\/label>\r\n      \r\n    <\/div>\r\n    <div class=\"mosia-row\">\r\n      <div class=\"mosia-field-group\">\r\n        <label class=\"mosia-label\">Type d'activit\u00e9 <span class=\"req\">*<\/span><\/label>\r\n        \r\n      <\/div>\r\n      <div class=\"mosia-field-group\">\r\n        <label class=\"mosia-label\">Activit\u00e9 avant travaux <span class=\"opt\">(si changement de destination)<\/span><\/label>\r\n        \r\n      <\/div>\r\n    <\/div>\r\n    <div class=\"mosia-field-group\">\r\n      <label class=\"mosia-label\">Adresse de l'\u00e9tablissement <span class=\"req\">*<\/span><\/label>\r\n      \r\n    <\/div>\r\n    <div class=\"mosia-row cols-3\">\r\n      <div class=\"mosia-field-group\">\r\n        <label class=\"mosia-label\">Commune <span class=\"req\">*<\/span><\/label>\r\n        \r\n      <\/div>\r\n      <div class=\"mosia-field-group\">\r\n        <label class=\"mosia-label\">Code postal <span class=\"req\">*<\/span><\/label>\r\n        \r\n      <\/div>\r\n      <div class=\"mosia-field-group\"><\/div>\r\n    <\/div>\r\n  `\r\n},\r\n{\r\n  key:\"facade\", eyebrow:\"Section 3\", title:\"Fa\u00e7ade du local\",\r\n  desc:\"Mat\u00e9riaux, huisserie et dimensions de la fa\u00e7ade.\",\r\n  html:`\r\n    <div class=\"mosia-field-group\">\r\n      <label class=\"mosia-label\">Mat\u00e9riaux de la fa\u00e7ade<\/label>\r\n      <textarea name=\"mosia_facade_materiaux\"><\/textarea>\r\n    <\/div>\r\n\r\n    <div class=\"mosia-subhead\">Huisserie <small>dimensions en m\u00e8tres<\/small><\/div>\r\n    <div class=\"mosia-row cols-3\">\r\n      <div class=\"mosia-field-group\"><label class=\"mosia-label\">Longueur<\/label>\r\n        <div class=\"mosia-unit-input\"><span>m<\/span><\/div><\/div>\r\n      <div class=\"mosia-field-group\"><label class=\"mosia-label\">Largeur<\/label>\r\n        <div class=\"mosia-unit-input\"><span>m<\/span><\/div><\/div>\r\n      <div class=\"mosia-field-group\"><label class=\"mosia-label\">Hauteur<\/label>\r\n        <div class=\"mosia-unit-input\"><span>m<\/span><\/div><\/div>\r\n    <\/div>\r\n    <div class=\"mosia-field-group\" style=\"max-width:240px\">\r\n      <label class=\"mosia-label\">All\u00e8ge <span class=\"opt\">(hauteur sous fen\u00eatre)<\/span><\/label>\r\n      <div class=\"mosia-unit-input\"><span>m<\/span><\/div>\r\n    <\/div>\r\n\r\n    <div class=\"mosia-subhead\">Fa\u00e7ade <small>dimensions en m\u00e8tres<\/small><\/div>\r\n    <div class=\"mosia-row cols-3\">\r\n      <div class=\"mosia-field-group\"><label class=\"mosia-label\">Longueur totale ext\u00e9rieure<\/label>\r\n        <div class=\"mosia-unit-input\"><span>m<\/span><\/div><\/div>\r\n      <div class=\"mosia-field-group\"><label class=\"mosia-label\">Largeur<\/label>\r\n        <div class=\"mosia-unit-input\"><span>m<\/span><\/div><\/div>\r\n      <div class=\"mosia-field-group\"><label class=\"mosia-label\">Hauteur de fa\u00e7ade<\/label>\r\n        <div class=\"mosia-unit-input\"><span>m<\/span><\/div><\/div>\r\n    <\/div>\r\n\r\n    <div class=\"mosia-subhead\">Porche <small>si pr\u00e9sent \u00e0 l'avant<\/small><\/div>\r\n    <div class=\"mosia-row\">\r\n      <div class=\"mosia-field-group\"><label class=\"mosia-label\">Hauteur sous porche<\/label>\r\n        <div class=\"mosia-unit-input\"><span>m<\/span><\/div><\/div>\r\n      <div class=\"mosia-field-group\"><label class=\"mosia-label\">Largeur du porche<\/label>\r\n        <div class=\"mosia-unit-input\"><span>m<\/span><\/div><\/div>\r\n    <\/div>\r\n\r\n    <div class=\"mosia-field-group\">\r\n      <label class=\"mosia-label\">Commentaire<\/label>\r\n      <textarea name=\"mosia_facade_commentaire\"><\/textarea>\r\n    <\/div>\r\n  `\r\n},\r\n{\r\n  key:\"interieur\", eyebrow:\"Section 4\", title:\"Int\u00e9rieur du local\",\r\n  desc:\"Am\u00e9nagement, structure et mat\u00e9riaux int\u00e9rieurs.\",\r\n  html:`\r\n    <div class=\"mosia-field-group\">\r\n      <label class=\"mosia-label\">Renseignements sur l'am\u00e9nagement<\/label>\r\n      <div class=\"mosia-help\" style=\"margin-top:-4px;margin-bottom:8px\">Indiquez le nombre de pi\u00e8ces pr\u00e9sentes ainsi que leur fonction.<\/div>\r\n      <textarea name=\"mosia_interieur_amenagement\" rows=\"3\"><\/textarea>\r\n    <\/div>\r\n    <div class=\"mosia-field-group\">\r\n      <label class=\"mosia-label\">Pr\u00e9sence d'\u00e9l\u00e9ments structurels <span class=\"opt\">(poutres, poteaux)<\/span><\/label>\r\n      <div class=\"mosia-help\" style=\"margin-top:-4px;margin-bottom:8px\">Merci d'indiquer leurs mat\u00e9riaux et dimensions si connus.<\/div>\r\n      <textarea name=\"mosia_interieur_structure\"><\/textarea>\r\n    <\/div>\r\n    <div class=\"mosia-row\">\r\n      <div class=\"mosia-field-group\">\r\n        <label class=\"mosia-label\">Mat\u00e9riaux \u2014 mur<\/label>\r\n        \r\n      <\/div>\r\n      <div class=\"mosia-field-group\">\r\n        <label class=\"mosia-label\">Mat\u00e9riaux \u2014 sol<\/label>\r\n        \r\n      <\/div>\r\n    <\/div>\r\n    <div class=\"mosia-field-group\" style=\"max-width:380px\">\r\n      <label class=\"mosia-label\">Mat\u00e9riaux \u2014 plafond<\/label>\r\n      \r\n    <\/div>\r\n\r\n    <div class=\"mosia-subhead\">Dimensions <small>hauteur sous plafond, \u00e9paisseurs<\/small><\/div>\r\n    <div class=\"mosia-row cols-3\">\r\n      <div class=\"mosia-field-group\"><label class=\"mosia-label\">Hauteur sous plafond<\/label>\r\n        <div class=\"mosia-unit-input\"><span>m<\/span><\/div><\/div>\r\n      <div class=\"mosia-field-group\"><label class=\"mosia-label\">\u00c9paisseur des murs<\/label>\r\n        <div class=\"mosia-unit-input\"><span>cm<\/span><\/div><\/div>\r\n      <div class=\"mosia-field-group\"><label class=\"mosia-label\">\u00c9paisseur des cloisons<\/label>\r\n        <div class=\"mosia-unit-input\"><span>cm<\/span><\/div><\/div>\r\n    <\/div>\r\n    <div class=\"mosia-help\" style=\"margin-top:-6px\">Pensez aussi aux dimensions de chaque pi\u00e8ce (longueur x largeur) et de chaque porte\/huisserie int\u00e9rieure : vous pourrez les d\u00e9tailler dans les photos et plans joints \u00e0 la fin du formulaire.<\/div>\r\n  `\r\n},\r\n{\r\n  key:\"acces_ext\", eyebrow:\"Section 5 \u2014 Accessibilit\u00e9\", title:\"Stationnement et cheminements ext\u00e9rieurs\",\r\n  desc:\"Conformit\u00e9 PMR des places de parking et des acc\u00e8s pi\u00e9tons.\",\r\n  html:`\r\n    <div class=\"mosia-ref\"><b>Textes de r\u00e9f\u00e9rence :<\/b> Arr\u00eat\u00e9 du 20 avril 2017, Arr\u00eat\u00e9 du 8 d\u00e9cembre 2014, Arr\u00eat\u00e9 du 1\u1d49\u02b3 ao\u00fbt 2006 modifi\u00e9, Code de la construction et de l'habitation (art. R.111-19-7 \u00e0 R.111-19-11).<\/div>\r\n\r\n    <div class=\"mosia-subhead\">1. Stationnement<\/div>\r\n    <div class=\"mosia-check-list\">\r\n      ${checkItem(\"mosia_chk_stationnement_dim\",\"Pr\u00e9sence d'un stationnement PMR de 3,30 m par 5 m\")}\r\n      ${checkItem(\"mosia_chk_stationnement_signal\",\"Pr\u00e9sence d'une signalisation horizontale sur les limites ou le long de l'emplacement\")}\r\n      ${checkItem(\"mosia_chk_stationnement_panneau\",\"Pr\u00e9sence d'un panneau de stationnement conforme \u00e0 l'arr\u00eat\u00e9 du 26 juillet 2011\")}\r\n      ${checkItem(\"mosia_chk_stationnement_devers\",\"Pr\u00e9sence d'un espace horizontal au d\u00e9vers pr\u00e8s, inf\u00e9rieur ou \u00e9gal \u00e0 2 %\")}\r\n    <\/div>\r\n    <div class=\"mosia-field-group\" style=\"margin-top:18px\">\r\n      <label class=\"mosia-label\">Les places adapt\u00e9es repr\u00e9sentent-elles au minimum 2&nbsp;% du nombre total de places ?<\/label>\r\n      ${toggleYesNo(\"mosia_stationnement_2pct\")}\r\n    <\/div>\r\n\r\n    <div class=\"mosia-subhead\">2. Cheminements ext\u00e9rieurs<\/div>\r\n    <div class=\"mosia-check-list\">\r\n      ${checkItem(\"mosia_chk_cheminement_contraste\",\"Pr\u00e9sence d'un contraste visuel et tactile sur le rev\u00eatement accessible, d\u00e9tectable \u00e0 la canne ou au pied\")}\r\n    <\/div>\r\n\r\n    <div class=\"mosia-field-group\" style=\"margin-top:18px\">\r\n      <label class=\"mosia-label\">Commentaire<\/label>\r\n      <textarea name=\"mosia_acces_ext_commentaire\"><\/textarea>\r\n    <\/div>\r\n  `\r\n},\r\n{\r\n  key:\"acces_etab\", eyebrow:\"Section 5 \u2014 Accessibilit\u00e9\", title:\"Acc\u00e8s \u00e0 l'\u00e9tablissement\",\r\n  desc:\"Seuil, marches, rampes et porte d'entr\u00e9e.\",\r\n  html:`\r\n    <div class=\"mosia-check-list\">\r\n      ${checkItem(\"mosia_chk_acces_repere\",\"Pr\u00e9sence de rep\u00e8re continu, tactile (bande de guidage contrast\u00e9e)\")}\r\n      ${checkItem(\"mosia_chk_acces_horizontal\",\"Pr\u00e9sence d'un cheminement accessible horizontal et sans ressaut\")}\r\n    <\/div>\r\n\r\n    <div class=\"mosia-field-group\" style=\"margin-top:16px\">\r\n      <label class=\"mosia-label\">Y a-t-il une d\u00e9nivellation qui ne peut \u00eatre \u00e9vit\u00e9e ?<\/label>\r\n      ${toggleYesNo(\"mosia_acces_denivellation\")}\r\n      <div class=\"mosia-reveal\" id=\"reveal_denivellation\">\r\n        <div class=\"mosia-check-list\">\r\n          ${checkItem(\"mosia_chk_pente_6\",\"Plan inclin\u00e9 de pente \u2264 6 %\")}\r\n          ${checkItem(\"mosia_chk_pente_10\",\"Plan inclin\u00e9 de pente jusqu'\u00e0 10 % sur une longueur \u2264 2 m\")}\r\n          ${checkItem(\"mosia_chk_pente_12\",\"Plan inclin\u00e9 de pente jusqu'\u00e0 12 % sur une longueur \u2264 0,50 m\")}\r\n          ${checkItem(\"mosia_chk_palier_repos\",\"Pr\u00e9sence d'un palier de repos en haut et en bas de chaque plan inclin\u00e9\")}\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <div class=\"mosia-subhead\">3-1 Seuil du b\u00e2timent<\/div>\r\n    <div class=\"mosia-help\" style=\"margin-top:-8px;margin-bottom:10px\">L'acc\u00e8s doit \u00eatre horizontal, sans \u00e9cart de niveau sup\u00e9rieur \u00e0 2 cm (ou ressaut chanfrein\u00e9 \u2264 4 cm).<\/div>\r\n    <div class=\"mosia-check-list\">\r\n      ${checkItem(\"mosia_chk_seuil_aucune\",\"L'acc\u00e8s ne comporte aucune marche, ou une marche \u2264 2 cm arrondie\/chanfrein\u00e9e\")}\r\n      ${checkItem(\"mosia_chk_seuil_2a4\",\"L'acc\u00e8s se fait par une marche entre 2 et 4 cm, chanfrein\u00e9e (pente &lt; 33 %)&quot;)}\r\n    <\/div>\r\n    <div class=\"mosia-field-group\" style=\"margin-top:14px\">\r\n      <label class=\"mosia-label\">L'acc\u00e8s se fait par une ou plusieurs marches de hauteur totale &gt; 4 cm<\/label>\r\n      <div class=\"mosia-row cols-3\">\r\n        <div><label class=\"mosia-label\" style=\"font-weight:400\">Nombre de marche(s)<\/label><\/div>\r\n        <div><label class=\"mosia-label\" style=\"font-weight:400\">Hauteur des marches<\/label><div class=\"mosia-unit-input\"><span>cm<\/span><\/div><\/div>\r\n        <div><label class=\"mosia-label\" style=\"font-weight:400\">Largeur du trottoir<\/label><div class=\"mosia-unit-input\"><span>m<\/span><\/div><\/div>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <div class=\"mosia-subhead\">3-2 Accessibilit\u00e9 des marches<\/div>\r\n    <div class=\"mosia-help\" style=\"margin-top:-8px;margin-bottom:10px\"><b>Moins de 3 marches<\/b><\/div>\r\n    <div class=\"mosia-check-list\">\r\n      ${checkItem(\"mosia_chk_marches_bande_eveil\",\"Pr\u00e9sence en haut des marches, \u00e0 50 cm, d'une bande d'\u00e9veil \u00e0 la vigilance\")}\r\n      ${checkItem(\"mosia_chk_marches_nez\",\"Pr\u00e9sence de nez de marches de couleur contrast\u00e9e, antid\u00e9rapants, largeur \u2265 3 cm\")}\r\n      ${checkItem(\"mosia_chk_marches_eclairage\",\"Pr\u00e9sence d'un \u00e9clairement de 150 lux (sauf marches ext\u00e9rieures)\")}\r\n    <\/div>\r\n\r\n    <div class=\"mosia-help\" style=\"margin-top:16px;margin-bottom:10px\"><b>\u00c0 partir de 3 marches<\/b><\/div>\r\n    <div class=\"mosia-check-list\">\r\n      ${checkItem(\"mosia_chk_marches_mc\",\"Pr\u00e9sence de main(s) courante(s) contrast\u00e9es, continues, \u00e0 hauteur 0,80-1,00 m\")}\r\n      ${checkItem(\"mosia_chk_marches_contraste_cm\",\"Pr\u00e9sence d'un contraste visuel de la premi\u00e8re et derni\u00e8re contremarche (\u226510 cm)\")}\r\n    <\/div>\r\n    <div class=\"mosia-field-group\" style=\"margin-top:16px\">\r\n      <label class=\"mosia-label\">Commentaire<\/label>\r\n      <textarea name=\"mosia_acces_marches_commentaire\"><\/textarea>\r\n    <\/div>\r\n\r\n    <div class=\"mosia-subhead\">3-3 Rampe<\/div>\r\n    <div class=\"mosia-field-group\">\r\n      <label class=\"mosia-label\">L'installation d'une rampe permanente est-elle possible ?<\/label>\r\n      ${toggleYesNo(\"mosia_rampe_permanente_possible\")}\r\n    <\/div>\r\n    <div class=\"mosia-row\">\r\n      <div class=\"mosia-field-group\"><label class=\"mosia-label\">Pente de la rampe<\/label><div class=\"mosia-unit-input\"><span>%<\/span><\/div><\/div>\r\n      <div class=\"mosia-field-group\"><label class=\"mosia-label\">Largeur du trottoir<\/label><div class=\"mosia-unit-input\"><span>m<\/span><\/div><\/div>\r\n    <\/div>\r\n    <div class=\"mosia-row\">\r\n      <div class=\"mosia-field-group\"><label class=\"mosia-label\">Largeur de la rampe<\/label><div class=\"mosia-unit-input\"><span>m<\/span><\/div><\/div>\r\n      <div class=\"mosia-field-group\"><label class=\"mosia-label\">Longueur de la rampe<\/label><div class=\"mosia-unit-input\"><span>m<\/span><\/div><\/div>\r\n    <\/div>\r\n    <div class=\"mosia-field-group\" style=\"max-width:300px\">\r\n      <label class=\"mosia-label\">Largeur r\u00e9siduelle du trottoir<\/label><div class=\"mosia-unit-input\"><span>m<\/span><\/div>\r\n    <\/div>\r\n    <div class=\"mosia-field-group\">\r\n      <label class=\"mosia-label\">Autres pr\u00e9cisions <span class=\"opt\">(mod\u00e8le, mat\u00e9riaux...)<\/span><\/label>\r\n      <textarea name=\"mosia_rampe_precisions\"><\/textarea>\r\n    <\/div>\r\n    <div class=\"mosia-field-group\">\r\n      <label class=\"mosia-label\">Commentaire<\/label>\r\n      <textarea name=\"mosia_rampe_commentaire\"><\/textarea>\r\n    <\/div>\r\n\r\n    <div class=\"mosia-subhead\">3-4 Porte d'entr\u00e9e<\/div>\r\n    <div class=\"mosia-check-list\">\r\n      ${checkItem(\"mosia_chk_porte_largeur\",\"Pr\u00e9sence d'un passage utile de largeur minimale 0,77 m\")}\r\n      ${checkItem(\"mosia_chk_porte_contraste\",\"Pr\u00e9sence d'un contraste visuel entre la porte et son environnement\")}\r\n      ${checkItem(\"mosia_chk_porte_effort\",\"Pr\u00e9sence d'un effort d'ouverture inf\u00e9rieur \u00e0 5 kg\")}\r\n      ${checkItem(\"mosia_chk_porte_poignee\",\"Pr\u00e9sence d'une poign\u00e9e facilement saisissable (debout ou assis)\")}\r\n      ${checkItem(\"mosia_chk_porte_vitree\",\"Parties vitr\u00e9es rep\u00e9rables ouvertes\/ferm\u00e9es par \u00e9l\u00e9ments visuels contrast\u00e9s\")}\r\n    <\/div>\r\n    <div class=\"mosia-field-group\" style=\"margin-top:14px\">\r\n      <label class=\"mosia-label\">Commentaire<\/label>\r\n      <textarea name=\"mosia_porte_entree_commentaire\"><\/textarea>\r\n    <\/div>\r\n  `\r\n},\r\n{\r\n  key:\"interieur_access\", eyebrow:\"Section 5 \u2014 Accessibilit\u00e9\", title:\"Circulations, portes et mobilier int\u00e9rieurs\",\r\n  desc:\"Mobilier accessible, all\u00e9es, portes int\u00e9rieures et marches int\u00e9rieures.\",\r\n  html:`\r\n    <div class=\"mosia-subhead\">4. Mobilier accessible au public<\/div>\r\n    <div class=\"mosia-field-group\">\r\n      <label class=\"mosia-label\">Mon \u00e9tablissement comporte du mobilier accessible au public<\/label>\r\n      ${toggleYesNo(\"mosia_mobilier_present\")}\r\n      <div class=\"mosia-reveal\" id=\"reveal_mobilier\">\r\n        <div class=\"mosia-check-list\">\r\n          ${checkItem(\"mosia_chk_mobilier_position\",\"Utilisable debout ou assis\")}\r\n          ${checkItem(\"mosia_chk_mobilier_hauteur\",\"\u00c0 une hauteur maximale de 0,80 m\")}\r\n          ${checkItem(\"mosia_chk_mobilier_vide\",\"Vide en partie inf\u00e9rieure \u2265 0,30 m (profondeur) x 0,60 m (largeur) x 0,70 m (hauteur)\")}\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <div class=\"mosia-subhead\">5. Circulations int\u00e9rieures<\/div>\r\n    <div class=\"mosia-check-list\">\r\n      ${checkItem(\"mosia_chk_circ_allees\",\"All\u00e9es d'une largeur minimale de 1,40 m (r\u00e9tr\u00e9cissement ponctuel tol\u00e9r\u00e9 entre 0,90 et 1,20 m)\")}\r\n      ${checkItem(\"mosia_chk_circ_restaurant\",\"All\u00e9es secondaires (restaurants) d'une largeur minimale de 1,05 m\")}\r\n      ${checkItem(\"mosia_chk_circ_retournement\",\"Espace de retournement de diam\u00e8tre 1,50 m \u00e0 chaque croisement d'all\u00e9es\")}\r\n      ${checkItem(\"mosia_chk_circ_equipement\",\"Espace pour fauteuil roulant (0,80 x 1,30 m) devant chaque \u00e9quipement\")}\r\n      ${checkItem(\"mosia_chk_circ_revetement\",\"Sol\/rev\u00eatement non meuble, non glissant, non r\u00e9fl\u00e9chissant, sans obstacle \u00e0 la roue\")}\r\n      ${checkItem(\"mosia_chk_circ_hauteur\",\"Hauteur de passage libre de 2,20 m minimum\")}\r\n      ${checkItem(\"mosia_chk_circ_eclairage\",\"Valeur d'\u00e9clairement de 100 lux\")}\r\n    <\/div>\r\n    <div class=\"mosia-field-group\" style=\"margin-top:14px\">\r\n      <label class=\"mosia-label\">Commentaire<\/label>\r\n      <textarea name=\"mosia_circulations_commentaire\"><\/textarea>\r\n    <\/div>\r\n\r\n    <div class=\"mosia-subhead\">6. Marches int\u00e9rieures<\/div>\r\n    <div class=\"mosia-field-group\">\r\n      <label class=\"mosia-label\">Mon \u00e9tablissement comporte une ou plusieurs marches int\u00e9rieures<\/label>\r\n      ${toggleYesNo(\"mosia_marches_int_present\")}\r\n      <div class=\"mosia-reveal\" id=\"reveal_marches_int\">\r\n        <div class=\"mosia-check-list\">\r\n          ${checkItem(\"mosia_chk_mi_mc\",\"Deux mains courantes contrast\u00e9es, continues, hauteur 0,80-1,00 m\")}\r\n          ${checkItem(\"mosia_chk_mi_bande\",\"En haut des marches, \u00e0 50 cm, une bande d'\u00e9veil \u00e0 la vigilance\")}\r\n          ${checkItem(\"mosia_chk_mi_contremarche\",\"Contraste visuel de la premi\u00e8re et derni\u00e8re contremarche \u2265 10 cm\")}\r\n          ${checkItem(\"mosia_chk_mi_nez\",\"Nez de marches contrast\u00e9s, antid\u00e9rapants, largeur \u2265 3 cm\")}\r\n          ${checkItem(\"mosia_chk_mi_eclairage\",\"\u00c9clairement de 150 lux\")}\r\n        <\/div>\r\n        <div class=\"mosia-field-group\" style=\"margin-top:14px\">\r\n          <label class=\"mosia-label\">6-3 Accessibilit\u00e9 des niveaux \u2014 moyen<\/label>\r\n          \r\n            \u2014 S\u00e9lectionner \u2014\r\n            Par un ascenseur\r\n            Par un \u00e9l\u00e9vateur\r\n            Par une rampe\r\n            Par un acc\u00e8s non usuel (sous d\u00e9rogation)\r\n          \r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n    <div class=\"mosia-field-group\">\r\n      <label class=\"mosia-label\">Commentaire<\/label>\r\n      <textarea name=\"mosia_marches_int_commentaire\"><\/textarea>\r\n    <\/div>\r\n\r\n    <div class=\"mosia-subhead\">8. Portes int\u00e9rieures<\/div>\r\n    <div class=\"mosia-field-group\">\r\n      <label class=\"mosia-label\">Mon \u00e9tablissement comporte des portes int\u00e9rieures utilis\u00e9es par le public<\/label>\r\n      ${toggleYesNo(\"mosia_portes_int_present\")}\r\n      <div class=\"mosia-reveal\" id=\"reveal_portes_int\">\r\n        <div class=\"mosia-check-list\">\r\n          ${checkItem(\"mosia_chk_pi_largeur\",\"Passage utile de 0,77 m minimum\")}\r\n          ${checkItem(\"mosia_chk_pi_contraste\",\"Contraste visuel entre la porte et son environnement\")}\r\n          ${checkItem(\"mosia_chk_pi_effort\",\"Effort d'ouverture inf\u00e9rieur \u00e0 5 kg\")}\r\n          ${checkItem(\"mosia_chk_pi_poignee\",\"Poign\u00e9e facilement saisissable (debout ou assis)\")}\r\n          ${checkItem(\"mosia_chk_pi_manoeuvre\",\"Espace de man\u0153uvre conforme devant chaque porte (1,20x1,70 m \u00e0 pousser \/ 1,20x2,20 m \u00e0 tirer)\")}\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n    <div class=\"mosia-field-group\">\r\n      <label class=\"mosia-label\">Commentaire<\/label>\r\n      <textarea name=\"mosia_portes_int_commentaire\"><\/textarea>\r\n    <\/div>\r\n  `\r\n},\r\n{\r\n  key:\"sanitaires_autres\", eyebrow:\"Section 5 \u2014 Accessibilit\u00e9\", title:\"Sanitaires, sorties et espaces sp\u00e9cifiques\",\r\n  desc:\"Sanitaires PMR, sorties, public assis, cabines et h\u00e9bergement.\",\r\n  html:`\r\n    <div class=\"mosia-subhead\">9. Sanitaires<\/div>\r\n    <div class=\"mosia-field-group\">\r\n      <label class=\"mosia-label\">Mon \u00e9tablissement comporte un sanitaire ouvert au public<\/label>\r\n      ${toggleYesNo(\"mosia_sanitaire_present\")}\r\n      <div class=\"mosia-reveal\" id=\"reveal_sanitaire\">\r\n        <div class=\"mosia-help\" style=\"margin-bottom:10px\"><b>WC<\/b><\/div>\r\n        <div class=\"mosia-check-list\">\r\n          ${checkItem(\"mosia_chk_wc_assise\",\"Hauteur d'assise entre 0,45 et 0,50 m\")}\r\n          ${checkItem(\"mosia_chk_wc_espace\",\"Espace minimal pour fauteuil \u00e0 c\u00f4t\u00e9 de la cuvette : 0,80 x 1,30 m\")}\r\n          ${checkItem(\"mosia_chk_wc_demitour\",\"Espace pour demi-tour (diam\u00e8tre 1,50 m) \u00e0 l'int\u00e9rieur ou \u00e0 d\u00e9faut \u00e0 l'ext\u00e9rieur\")}\r\n          ${checkItem(\"mosia_chk_wc_barre\",\"Barre d'appui \u00e0 hauteur 0,70-0,80 m\")}\r\n          ${checkItem(\"mosia_chk_wc_porte\",\"Dispositif permettant de refermer la porte derri\u00e8re soi\")}\r\n        <\/div>\r\n        <div class=\"mosia-help\" style=\"margin:16px 0 10px\"><b>Lave-mains<\/b><\/div>\r\n        <div class=\"mosia-check-list\">\r\n          ${checkItem(\"mosia_chk_lm_hauteur\",\"Hauteur maximale de 0,85 m\")}\r\n          ${checkItem(\"mosia_chk_lm_vide\",\"Vide en partie inf\u00e9rieure \u2265 0,70 x 0,60 x 0,30 m\")}\r\n          ${checkItem(\"mosia_chk_lm_espace\",\"Espace minimal pour fauteuil \u00e0 l'aplomb du lavabo : 0,80 x 1,30 m\")}\r\n          ${checkItem(\"mosia_chk_lm_robinet\",\"Commandes de robinetterie situ\u00e9es \u00e0 plus de 0,40 m d'un angle rentrant\")}\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n    <div class=\"mosia-field-group\">\r\n      <label class=\"mosia-label\">Commentaire<\/label>\r\n      <textarea name=\"mosia_sanitaires_commentaire\"><\/textarea>\r\n    <\/div>\r\n\r\n    <div class=\"mosia-subhead\">10. Sorties<\/div>\r\n    <div class=\"mosia-check-list\">\r\n      ${checkItem(\"mosia_chk_sorties_reperable\",\"Les sorties sont rep\u00e9rables de tout point, sans risque de confusion avec les issues de secours\")}\r\n    <\/div>\r\n    <div class=\"mosia-field-group\" style=\"margin-top:14px\"><label class=\"mosia-label\">Commentaire<\/label><textarea name=\"mosia_sorties_commentaire\"><\/textarea><\/div>\r\n\r\n    <div class=\"mosia-subhead\">11. \u00c9tablissement recevant du public assis<\/div>\r\n    <div class=\"mosia-field-group\">\r\n      <label class=\"mosia-label\">Je re\u00e7ois du public assis<\/label>\r\n      ${toggleYesNo(\"mosia_public_assis\")}\r\n    <\/div>\r\n\r\n    <div class=\"mosia-subhead\">12. \u00c9tablissement comportant des cabines<\/div>\r\n    <div class=\"mosia-field-group\">\r\n      <label class=\"mosia-label\">Mon \u00e9tablissement comporte une ou des cabines <span class=\"opt\">(habillage, soin, douche)<\/span><\/label>\r\n      ${toggleYesNo(\"mosia_cabines_present\")}\r\n      <div class=\"mosia-reveal\" id=\"reveal_cabines\">\r\n        <div class=\"mosia-check-list\">\r\n          ${checkItem(\"mosia_chk_cabine_demitour\",\"Espace de man\u0153uvre avec demi-tour (diam\u00e8tre 1,50 m) hors d\u00e9battement de porte\")}\r\n          ${checkItem(\"mosia_chk_cabine_barre\",\"Barre d'appui \u00e0 70 cm du sol\")}\r\n          ${checkItem(\"mosia_chk_cabine_assise\",\"\u00c9quipement permettant de s'asseoir\")}\r\n          ${checkItem(\"mosia_chk_cabine_debout\",\"\u00c9quipement permettant de rester en position debout\")}\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <div class=\"mosia-subhead\">13. \u00c9tablissement disposant de locaux d'h\u00e9bergement<\/div>\r\n    <div class=\"mosia-row\">\r\n      <div class=\"mosia-field-group\"><label class=\"mosia-label\">Total de chambres<\/label><\/div>\r\n      <div class=\"mosia-field-group\"><label class=\"mosia-label\">Nombre de chambres adapt\u00e9es<\/label><\/div>\r\n    <\/div>\r\n  `\r\n},\r\n{\r\n  key:\"signaletique\", eyebrow:\"Section 5 \u2014 Accessibilit\u00e9\", title:\"Signal\u00e9tique et \u00e9clairage\",\r\n  desc:\"Information, signalisation et \u00e9clairage des zones publiques.\",\r\n  html:`\r\n    <div class=\"mosia-subhead\">14. \u00c9l\u00e9ments d'information et de signalisation<\/div>\r\n    <div class=\"mosia-help\" style=\"margin-top:-8px;margin-bottom:10px\"><b>Visibilit\u00e9<\/b><\/div>\r\n    <div class=\"mosia-check-list\">\r\n      ${checkItem(\"mosia_chk_signal_contraste\",\"Contrast\u00e9s par rapport \u00e0 leur environnement imm\u00e9diat\")}\r\n      ${checkItem(\"mosia_chk_signal_position\",\"Lecture possible debout comme assis\")}\r\n      ${checkItem(\"mosia_chk_signal_eblouissement\",\"Sans effet d'\u00e9blouissement, de reflet ou de contre-jour\")}\r\n    <\/div>\r\n    <div class=\"mosia-help\" style=\"margin:16px 0 10px\"><b>Lisibilit\u00e9<\/b><\/div>\r\n    <div class=\"mosia-check-list\">\r\n      ${checkItem(\"mosia_chk_signal_lisibilite\",\"Informations contrast\u00e9es par rapport au fond du support, taille de caract\u00e8res adapt\u00e9e\")}\r\n    <\/div>\r\n    <div class=\"mosia-help\" style=\"margin:16px 0 10px\"><b>Compr\u00e9hension<\/b><\/div>\r\n    <div class=\"mosia-check-list\">\r\n      ${checkItem(\"mosia_chk_signal_pictogramme\",\"Recours autant que possible \u00e0 des ic\u00f4nes\/pictogrammes doubl\u00e9s d'une information \u00e9crite\")}\r\n    <\/div>\r\n    <div class=\"mosia-field-group\" style=\"margin-top:14px\"><label class=\"mosia-label\">Commentaire<\/label><textarea name=\"mosia_signaletique_commentaire\"><\/textarea><\/div>\r\n\r\n    <div class=\"mosia-subhead\">15. \u00c9clairage<\/div>\r\n    <div class=\"mosia-check-list\">\r\n      ${checkItem(\"mosia_chk_eclairage_uniforme\",\"Cheminements, circulations et espaces d'accueil suffisamment et uniform\u00e9ment \u00e9clair\u00e9s\")}\r\n      ${checkItem(\"mosia_chk_eclairage_sans_reflet\",\"\u00c9clairage sans \u00e9blouissement, ni zones d'ombre marqu\u00e9es\")}\r\n      ${checkItem(\"mosia_chk_eclairage_commandes\",\"Commandes d'\u00e9clairage accessibles rep\u00e9rables et facilement utilisables\")}\r\n    <\/div>\r\n    <div class=\"mosia-field-group\" style=\"margin-top:14px\"><label class=\"mosia-label\">Commentaire<\/label><textarea name=\"mosia_eclairage_commentaire\"><\/textarea><\/div>\r\n  `\r\n},\r\n{\r\n  key:\"securite_batiment\", eyebrow:\"Section 6 \u2014 S\u00e9curit\u00e9 incendie\", title:\"Classement et construction du b\u00e2timent\",\r\n  desc:\"Effectif, cat\u00e9gorie, desserte et r\u00e9sistance au feu des structures.\",\r\n  html:`\r\n    <div class=\"mosia-ref\"><b>Textes de r\u00e9f\u00e9rence :<\/b> D\u00e9cret n\u00b073-1007 du 31\/10\/1973 (art. R.123-1 \u00e0 R.123-55 CCH), D\u00e9cret n\u00b02021-872 du 30\/06\/2021 (art. R.143-1 \u00e0 R.143-47 et R.157-1 \u00e0 R.157-6 CCH), Arr\u00eat\u00e9 du 25 juin 1980 modifi\u00e9.<\/div>\r\n\r\n    <div class=\"mosia-subhead\">1. Description du local<\/div>\r\n    <div class=\"mosia-row\">\r\n      <div class=\"mosia-field-group\"><label class=\"mosia-label\">Surface totale<\/label><div class=\"mosia-unit-input\"><span>m\u00b2<\/span><\/div><\/div>\r\n      <div class=\"mosia-field-group\"><label class=\"mosia-label\">Surface r\u00e9serv\u00e9e au public<\/label><div class=\"mosia-unit-input\"><span>m\u00b2<\/span><\/div><\/div>\r\n    <\/div>\r\n\r\n    <div class=\"mosia-subhead\">2. Classement<\/div>\r\n    <div class=\"mosia-row\">\r\n      <div class=\"mosia-field-group\"><label class=\"mosia-label\">Type d'\u00e9tablissement <span class=\"opt\">(M, N, V, ...)<\/span><\/label><\/div>\r\n      <div class=\"mosia-field-group\"><label class=\"mosia-label\">Cat\u00e9gorie <span class=\"opt\">(1 \u00e0 5)<\/span><\/label><\/div>\r\n    <\/div>\r\n    <div class=\"mosia-row cols-3\">\r\n      <div class=\"mosia-field-group\"><label class=\"mosia-label\">Effectif public<\/label><\/div>\r\n      <div class=\"mosia-field-group\"><label class=\"mosia-label\">Effectif personnel<\/label><\/div>\r\n      <div class=\"mosia-field-group\"><label class=\"mosia-label\">Effectif total<\/label><\/div>\r\n    <\/div>\r\n\r\n    <div class=\"mosia-subhead\">3-1 Conception et desserte<\/div>\r\n    <div class=\"mosia-help\" style=\"margin-top:-8px;margin-bottom:10px\"><b>Voie engins<\/b><\/div>\r\n    <div class=\"mosia-check-list\">\r\n      ${checkItem(\"mosia_chk_voie_largeur\",\"Largeur minimale de 3,00 m\")}\r\n      ${checkItem(\"mosia_chk_voie_hauteur\",\"Hauteur minimale de 3,50 m\")}\r\n      ${checkItem(\"mosia_chk_voie_pente\",\"Pente \u2264 15 %\")}\r\n      ${checkItem(\"mosia_chk_voie_giration\",\"Rayon de giration compatible avec les engins de secours\")}\r\n    <\/div>\r\n    <div class=\"mosia-help\" style=\"margin:16px 0 10px\"><b>Voie \u00e9chelle<\/b><\/div>\r\n    <div class=\"mosia-check-list\">\r\n      ${checkItem(\"mosia_chk_echelle_largeur\",\"Largeur minimale de 4,00 m\")}\r\n      ${checkItem(\"mosia_chk_echelle_distance\",\"Distance entre la voie et la fa\u00e7ade de 1 \u00e0 8 m\")}\r\n      ${checkItem(\"mosia_chk_echelle_obstacle\",\"Absence d'obstacles a\u00e9riens (balcons, auvents, arbres)\")}\r\n    <\/div>\r\n    <div class=\"mosia-help\" style=\"margin:16px 0 10px\"><b>Fa\u00e7ade accessible aux secours<\/b><\/div>\r\n    <div class=\"mosia-check-list\">\r\n      ${checkItem(\"mosia_chk_facade_secours\",\"Au moins une fa\u00e7ade accessible par voie engins ou espace libre\")}\r\n    <\/div>\r\n\r\n    <div class=\"mosia-subhead\">3-2 Isolement par rapport aux tiers<\/div>\r\n    <div class=\"mosia-field-group\">\r\n      <label class=\"mosia-label\">Identification des tiers<\/label>\r\n      <textarea name=\"mosia_tiers_identification\"><\/textarea>\r\n    <\/div>\r\n\r\n    <div class=\"mosia-subhead\">3-3 R\u00e9sistance au feu des structures<\/div>\r\n    <div class=\"mosia-field-group\">\r\n      <label class=\"mosia-label\">R\u00e9sistance au feu des \u00e9l\u00e9ments porteurs (poteaux, poutres, voiles)<\/label>\r\n      \r\n        \u2014 S\u00e9lectionner si connu \u2014\r\n        R 30R 60R 90R 120\r\n      \r\n    <\/div>\r\n    <div class=\"mosia-field-group\">\r\n      <label class=\"mosia-label\">R\u00e9sistance au feu des planchers<\/label>\r\n      \r\n        \u2014 S\u00e9lectionner si connu \u2014\r\n        R 30R 60R 90R 120\r\n      \r\n    <\/div>\r\n\r\n    <div class=\"mosia-field-group\">\r\n      <label class=\"mosia-label\">Commentaire<\/label>\r\n      <textarea name=\"mosia_securite_batiment_commentaire\"><\/textarea>\r\n    <\/div>\r\n  `\r\n},\r\n{\r\n  key:\"securite_degagements\", eyebrow:\"Section 6 \u2014 S\u00e9curit\u00e9 incendie\", title:\"D\u00e9gagements, d\u00e9senfumage et am\u00e9nagements\",\r\n  desc:\"Sorties de secours, locaux \u00e0 risques et nature des rev\u00eatements.\",\r\n  html:`\r\n    <div class=\"mosia-subhead\">7. D\u00e9gagements<\/div>\r\n    <div class=\"mosia-row\">\r\n      <div class=\"mosia-field-group\"><label class=\"mosia-label\">Nombre de sorties<\/label><\/div>\r\n      <div class=\"mosia-field-group\"><label class=\"mosia-label\">Nombre d'escaliers<\/label><\/div>\r\n    <\/div>\r\n    <div class=\"mosia-field-group\">\r\n      <label class=\"mosia-label\">Largeur(s) des d\u00e9gagements<\/label>\r\n      \r\n    <\/div>\r\n\r\n    <div class=\"mosia-subhead\">8. Locaux recevant du public en sous-sol<\/div>\r\n    <div class=\"mosia-field-group\">\r\n      <label class=\"mosia-label\">Mon \u00e9tablissement re\u00e7oit-il du public en sous-sol ?<\/label>\r\n      ${toggleYesNo(\"mosia_public_soussol\")}\r\n    <\/div>\r\n\r\n    <div class=\"mosia-subhead\">9. Tribunes et gradins non d\u00e9montables<\/div>\r\n    <div class=\"mosia-field-group\">\r\n      <label class=\"mosia-label\">Mon \u00e9tablissement a-t-il des tribunes ou gradins non d\u00e9montables ?<\/label>\r\n      ${toggleYesNo(\"mosia_tribunes\")}\r\n    <\/div>\r\n\r\n    <div class=\"mosia-subhead\">11. D\u00e9senfumage<\/div>\r\n    <div class=\"mosia-check-list\">\r\n      ${checkItem(\"mosia_chk_desenfumage_naturel\",\"D\u00e9senfumage naturel\")}\r\n      ${checkItem(\"mosia_chk_desenfumage_mecanique\",\"D\u00e9senfumage m\u00e9canique\")}\r\n    <\/div>\r\n    <div class=\"mosia-field-group\"><label class=\"mosia-label\">Locaux concern\u00e9s<\/label><\/div>\r\n\r\n    <div class=\"mosia-subhead\">12. Chauffage \/ ventilation \/ climatisation<\/div>\r\n    <div class=\"mosia-row\">\r\n      <div class=\"mosia-field-group\"><label class=\"mosia-label\">Mode de chauffage<\/label><\/div>\r\n      <div class=\"mosia-field-group\"><label class=\"mosia-label\">Type de ventilation<\/label><\/div>\r\n    <\/div>\r\n\r\n    <div class=\"mosia-subhead\">13. Installation gaz et hydrocarbures<\/div>\r\n    <div class=\"mosia-field-group\">\r\n      <label class=\"mosia-label\">Mon \u00e9tablissement a-t-il une installation de gaz ou hydrocarbures ?<\/label>\r\n      ${toggleYesNo(\"mosia_gaz_present\")}\r\n      <div class=\"mosia-reveal\" id=\"reveal_gaz\">\r\n        <div class=\"mosia-check-list\">\r\n          ${checkItem(\"mosia_chk_gaz_naturel\",\"Gaz naturel\")}\r\n          ${checkItem(\"mosia_chk_gaz_fioul\",\"Fioul\")}\r\n          ${checkItem(\"mosia_chk_gaz_propane\",\"Propane \/ Butane\")}\r\n        <\/div>\r\n        <div class=\"mosia-field-group\" style=\"margin-top:12px\"><label class=\"mosia-label\">Fonction des appareils<\/label><\/div>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <div class=\"mosia-subhead\">15. \u00c9clairage de s\u00e9curit\u00e9<\/div>\r\n    <div class=\"mosia-field-group\">\r\n      <label class=\"mosia-label\">Les \u00e9clairages de s\u00e9curit\u00e9 sont-ils pr\u00e9sents ?<\/label>\r\n      ${toggleYesNo(\"mosia_eclairage_securite\")}\r\n      <div class=\"mosia-reveal\" id=\"reveal_eclairage_securite\">\r\n        <div class=\"mosia-check-list\">\r\n          ${checkItem(\"mosia_chk_es_ambiance\",\"\u00c9clairage d'ambiance autonome\")}\r\n          ${checkItem(\"mosia_chk_es_evacuation\",\"\u00c9clairage d'\u00e9vacuation\")}\r\n          ${checkItem(\"mosia_chk_es_baes\",\"BAES\")}\r\n          ${checkItem(\"mosia_chk_es_baeh\",\"Source centrale \/ BAEH\")}\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <div class=\"mosia-subhead\">16. Ascenseurs et \u00e9quipements mobiles<\/div>\r\n    <div class=\"mosia-field-group\">\r\n      <label class=\"mosia-label\">Pr\u00e9sence d'un ascenseur ou monte-charge ?<\/label>\r\n      ${toggleYesNo(\"mosia_ascenseur_present\")}\r\n      <div class=\"mosia-reveal\" id=\"reveal_ascenseur\">\r\n        <div class=\"mosia-check-list\">\r\n          ${checkItem(\"mosia_chk_asc_ascenseur\",\"Ascenseur\")}\r\n          ${checkItem(\"mosia_chk_asc_escalier_meca\",\"Escalier m\u00e9canique\")}\r\n          ${checkItem(\"mosia_chk_asc_montecharge\",\"Monte-charge\")}\r\n          ${checkItem(\"mosia_chk_asc_trottoir\",\"Trottoir roulant\")}\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <div class=\"mosia-subhead\">16-bis. Appareils de cuisson \u2014 restauration<\/div>\r\n    <div class=\"mosia-field-group\">\r\n      <label class=\"mosia-label\">Pr\u00e9sence d'appareil(s) de cuisson ?<\/label>\r\n      ${toggleYesNo(\"mosia_cuisson_present\")}\r\n      <div class=\"mosia-reveal\" id=\"reveal_cuisson\">\r\n        <div class=\"mosia-check-list\">\r\n          ${checkItem(\"mosia_chk_cuisine_fermee\",\"Cuisine ferm\u00e9e\")}\r\n          ${checkItem(\"mosia_chk_cuisine_ouverte\",\"Cuisine ouverte\")}\r\n          ${checkItem(\"mosia_chk_cuisine_ilots\",\"Cuisine en \u00eelots\")}\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <div class=\"mosia-subhead\">17. Moyens de secours<\/div>\r\n    <div class=\"mosia-check-list\">\r\n      ${checkItem(\"mosia_chk_ms_poteaux\",\"Poteaux et bouches incendie\")}\r\n      ${checkItem(\"mosia_chk_ms_ria\",\"RIA (robinets d'incendie arm\u00e9s)\")}\r\n      ${checkItem(\"mosia_chk_ms_colonnes\",\"Colonnes s\u00e8ches \/ en charge\")}\r\n      ${checkItem(\"mosia_chk_ms_sprinklers\",\"Sprinklers \/ brouillard\")}\r\n      ${checkItem(\"mosia_chk_ms_extincteur_distance\",\"Distance maximum \u00e0 un extincteur : 15 m\")}\r\n      ${checkItem(\"mosia_chk_ms_attestation\",\"Attestation de v\u00e9rification des extincteurs de l'ann\u00e9e en cours\")}\r\n    <\/div>\r\n    <div class=\"mosia-field-group\" style=\"margin-top:14px\">\r\n      <label class=\"mosia-label\">Type d'alarme<\/label>\r\n      \r\n        \u2014 S\u00e9lectionner si connu \u2014\r\n        Type 1Type 2aType 2bType 3Type 4\r\n      \r\n    <\/div>\r\n\r\n    <div class=\"mosia-field-group\">\r\n      <label class=\"mosia-label\">Commentaire<\/label>\r\n      <textarea name=\"mosia_securite_degagements_commentaire\"><\/textarea>\r\n    <\/div>\r\n  `\r\n},\r\n{\r\n  key:\"code_travail\", eyebrow:\"Section 7 \u2014 Code du travail\", title:\"Conditions de travail et locaux du personnel\",\r\n  desc:\"Applicable si votre \u00e9tablissement emploie du personnel salari\u00e9.\",\r\n  html:`\r\n    <div class=\"mosia-note\">Cette section concerne les obligations li\u00e9es au Code du travail (DUERP, issues de secours pour le personnel, produits dangereux...). Vous pouvez la passer si elle ne s'applique pas \u00e0 votre situation.<\/div>\r\n\r\n    <div class=\"mosia-subhead\">1. Documents obligatoires<\/div>\r\n    <div class=\"mosia-check-list\">\r\n      ${checkItem(\"mosia_chk_duerp_jour\",\"DUERP \u00e0 jour (moins d'1 an ou apr\u00e8s modification des locaux\/activit\u00e9s)\")}\r\n      ${checkItem(\"mosia_chk_duerp_adapte\",\"DUERP adapt\u00e9 \u00e0 l'activit\u00e9 r\u00e9elle de l'ERP\")}\r\n      ${checkItem(\"mosia_chk_consignes_affichees\",\"Consignes de s\u00e9curit\u00e9 affich\u00e9es (incendie, \u00e9vacuation, premiers secours)\")}\r\n      ${checkItem(\"mosia_chk_registre\",\"Registre de s\u00e9curit\u00e9 pr\u00e9sent, accessible et renseign\u00e9\")}\r\n    <\/div>\r\n\r\n    <div class=\"mosia-subhead\">2. Circulations int\u00e9rieures \/ ext\u00e9rieures<\/div>\r\n    <div class=\"mosia-check-list\">\r\n      ${checkItem(\"mosia_chk_ct_sol\",\"Sols stables, non glissants\")}\r\n      ${checkItem(\"mosia_chk_ct_largeur\",\"Largeur minimale des circulations respect\u00e9e (&gt;1,20 m en r\u00e9novation, &gt;1,40 m en neuf)\")}\r\n      ${checkItem(\"mosia_chk_ct_hauteur\",\"Hauteur libre de passage &gt; 2,00 m\")}\r\n      ${checkItem(\"mosia_chk_ct_eclairage\",\"\u00c9clairage suffisant (&gt;100 lux int\u00e9rieur, &gt;20 lux ext\u00e9rieur)\")}\r\n    <\/div>\r\n\r\n    <div class=\"mosia-subhead\">3. Issues de secours &amp; \u00e9vacuation<\/div>\r\n    <div class=\"mosia-field-group\">\r\n      <label class=\"mosia-label\">Nombre d'issues de secours suffisant (selon effectif) ?<\/label>\r\n      ${toggleYesNo(\"mosia_ct_issues_suffisantes\")}\r\n    <\/div>\r\n    <div class=\"mosia-field-group\">\r\n      <label class=\"mosia-label\">Largeur des issues sup\u00e9rieure \u00e0 0,80 m ?<\/label>\r\n      ${toggleYesNo(\"mosia_ct_largeur_issues\")}\r\n    <\/div>\r\n\r\n    <div class=\"mosia-subhead\">4. Incendie<\/div>\r\n    <div class=\"mosia-field-group\">\r\n      <label class=\"mosia-label\">Pr\u00e9sence d'extincteurs accessibles c\u00f4t\u00e9 salari\u00e9s ?<\/label>\r\n      ${toggleYesNo(\"mosia_ct_extincteurs\")}\r\n    <\/div>\r\n\r\n    <div class=\"mosia-subhead\">7. Produits dangereux<\/div>\r\n    <div class=\"mosia-field-group\">\r\n      <label class=\"mosia-label\">Pr\u00e9sence de produits dangereux ?<\/label>\r\n      ${toggleYesNo(\"mosia_ct_produits_dangereux\")}\r\n      <div class=\"mosia-reveal\" id=\"reveal_produits_dangereux\">\r\n        <div class=\"mosia-check-list\">\r\n          ${checkItem(\"mosia_chk_pd_etiquetes\",\"Produits \u00e9tiquet\u00e9s et identifi\u00e9s\")}\r\n          ${checkItem(\"mosia_chk_pd_fds\",\"Fiches de donn\u00e9es de s\u00e9curit\u00e9 (FDS) disponibles\")}\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <div class=\"mosia-subhead\">Accessibilit\u00e9 des lieux de travail<\/div>\r\n    <div class=\"mosia-field-group\">\r\n      <label class=\"mosia-label\">Le lieu de travail est-il accessible aux PMR ?<\/label>\r\n      ${toggleYesNo(\"mosia_ct_pmr_accessible\")}\r\n    <\/div>\r\n\r\n    <div class=\"mosia-field-group\">\r\n      <label class=\"mosia-label\">Commentaire<\/label>\r\n      <textarea name=\"mosia_code_travail_commentaire\"><\/textarea>\r\n    <\/div>\r\n  `\r\n},\r\n{\r\n  key:\"documents\", eyebrow:\"Section 8\", title:\"Reportage photo et documents\",\r\n  desc:\"D\u00e9posez vos photos et plans via notre espace de d\u00e9p\u00f4t s\u00e9curis\u00e9.\",\r\n  html:`\r\n    <div class=\"mosia-note\">D'apr\u00e8s le dossier MOSIA, les photos attendues couvrent : la fa\u00e7ade et l'huisserie, l'am\u00e9nagement int\u00e9rieur et les \u00e9l\u00e9ments structurels, l'am\u00e9nagement ext\u00e9rieur et les stationnements, les acc\u00e8s \u00e0 l'\u00e9tablissement, le mobilier accessible, les circulations int\u00e9rieures, la disposition des portes, les sanitaires, les sorties, la signal\u00e9tique, ainsi que tout plan disponible (DWG, PDF, photo de plan papier).<\/div>\r\n\r\n    <div class=\"mosia-field-group\">\r\n      <label class=\"mosia-label\">1. D\u00e9posez vos fichiers sur notre espace de d\u00e9p\u00f4t s\u00e9curis\u00e9<\/label>\r\n      <div class=\"mosia-help\" style=\"margin-top:-4px;margin-bottom:12px\">Cliquez sur le bouton ci-dessous : il ouvre un nouvel onglet o\u00f9 vous pourrez glisser-d\u00e9poser vos photos et plans directement. Vous n'avez besoin d'aucun compte pour cela.<\/div>\r\n      <a href=\"${PCLOUD_UPLOAD_LINK}\" target=\"_blank\" rel=\"noopener\" class=\"mosia-btn mosia-btn-primary\" style=\"display:inline-flex;align-items:center;gap:8px;text-decoration:none\">\r\n        <svg width=\"18\" height=\"18\" viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\"><path d=\"M12 16V4M12 4l-4 4M12 4l4 4M4 16v2a2 2 0 002 2h12a2 2 0 002-2v-2\" \/><\/svg>\r\n        Ouvrir l'espace de d\u00e9p\u00f4t de fichiers\r\n      <\/a>\r\n      <div class=\"mosia-help\" style=\"margin-top:10px\">Le lien s'ouvre dans un nouvel onglet \u2014 pensez \u00e0 revenir ici une fois vos fichiers d\u00e9pos\u00e9s pour terminer votre dossier.<\/div>\r\n    <\/div>\r\n\r\n    <div class=\"mosia-field-group\">\r\n      <label class=\"mosia-check\">\r\n        \r\n        <span>J'ai bien d\u00e9pos\u00e9 mes photos et plans sur l'espace de d\u00e9p\u00f4t ci-dessus <span class=\"opt\">(ou je les enverrai s\u00e9par\u00e9ment \u00e0 agence.mosia@gmail.com)<\/span><\/span>\r\n      <\/label>\r\n    <\/div>\r\n\r\n    <div class=\"mosia-field-group\">\r\n      <label class=\"mosia-label\">Remarques compl\u00e9mentaires sur le reportage photo<\/label>\r\n      <textarea name=\"mosia_documents_commentaire\"><\/textarea>\r\n    <\/div>\r\n  `\r\n},\r\n{\r\n  key:\"recap\", eyebrow:\"Derni\u00e8re \u00e9tape\", title:\"R\u00e9capitulatif et envoi\",\r\n  desc:\"V\u00e9rifiez les informations principales avant l'envoi de votre dossier.\",\r\n  html:`\r\n    <div id=\"mosiaSummary\"><\/div>\r\n    <div class=\"mosia-field-group\" style=\"margin-top:10px\">\r\n      <label class=\"mosia-label\">Message compl\u00e9mentaire pour MOSIA <span class=\"opt\">(facultatif)<\/span><\/label>\r\n      <textarea name=\"mosia_message_libre\"><\/textarea>\r\n    <\/div>\r\n    <div class=\"mosia-check\" style=\"margin-top:6px\">\r\n      \r\n      <span>J'accepte que MOSIA utilise les informations transmises dans le cadre du traitement de mon dossier ERP. <span class=\"req\">*<\/span><\/span>\r\n    <\/div>\r\n  `\r\n}\r\n];\r\n\r\n\/* ---------- helpers to build markup ---------- *\/\r\nfunction checkItem(name, label){\r\n  return `<label class=\"mosia-check\"><span>${label}<\/span><\/label>`;\r\n}\r\nfunction toggleYesNo(name, noVariant){\r\n  const noClass = noVariant ? \"no-variant\" : \"\";\r\n  return `<div class=\"mosia-toggle\">\r\n    \r\n    <label for=\"${name}_oui\">Oui<\/label>\r\n    \r\n    <label for=\"${name}_non\">Non<\/label>\r\n  <\/div>`;\r\n}\r\n\r\n\/* ---------- render steps ---------- *\/\r\nconst card = document.getElementById('mosiaCard');\r\nconst trail = document.getElementById('mosia-trail');\r\nlet current = 0;\r\n\r\n\/* Stockage persistant de TOUTES les r\u00e9ponses, car chaque changement\r\n   d'\u00e9tape d\u00e9truit le DOM de l'\u00e9tape pr\u00e9c\u00e9dente (card.innerHTML = ...).\r\n   Sans ce store, les valeurs des \u00e9tapes pass\u00e9es seraient perdues. *\/\r\nconst answers = {}; \/\/ { fieldName: value }            -&gt; text\/select\/textarea\/radio\r\nconst checkedAnswers = {}; \/\/ { fieldName: true }       -&gt; checkboxes coch\u00e9es\r\nSTEPS.forEach((s,i)=&gt;{\r\n  trail.insertAdjacentHTML('beforeend', `<i data-i=\"${i}\"><\/i>`);\r\n});\r\ndocument.getElementById('mosia-step-total').textContent = STEPS.length;\r\n\r\n\/* Sauvegarde les valeurs actuellement dans le DOM (\u00e9tape affich\u00e9e)\r\n   dans le store global, avant que le DOM ne soit d\u00e9truit. *\/\r\nfunction saveCurrentStepValues(){\r\n  const fields = card.querySelectorAll('input[name], select[name], textarea[name]');\r\n  fields.forEach(el=&gt;{\r\n    if(el.type === 'checkbox'){\r\n      checkedAnswers[el.name] = el.checked;\r\n    } else if(el.type === 'radio'){\r\n      if(el.checked) answers[el.name] = el.value;\r\n    } else {\r\n      answers[el.name] = el.value;\r\n    }\r\n  });\r\n}\r\n\r\n\/* R\u00e9applique les valeurs sauvegard\u00e9es sur le DOM nouvellement inject\u00e9\r\n   pour l'\u00e9tape qu'on affiche. *\/\r\nfunction restoreStepValues(){\r\n  const fields = card.querySelectorAll('input[name], select[name], textarea[name]');\r\n  fields.forEach(el=&gt;{\r\n    if(el.type === 'file') return;\r\n    if(el.type === 'checkbox'){\r\n      if(checkedAnswers[el.name]) el.checked = true;\r\n    } else if(el.type === 'radio'){\r\n      if(answers[el.name] === el.value) el.checked = true;\r\n    } else if(answers[el.name] !== undefined){\r\n      el.value = answers[el.name];\r\n    }\r\n  });\r\n}\r\n\r\nfunction renderStep(i){\r\n  saveCurrentStepValues();\r\n\r\n  card.innerHTML = `\r\n    <div class=\"mosia-step active\">\r\n      <div class=\"mosia-step-head\">\r\n        <div class=\"mosia-step-eyebrow\">${s_eyebrow(i)}<\/div>\r\n        <h2 class=\"mosia-step-title\">${STEPS[i].title}<\/h2>\r\n        <p class=\"mosia-step-desc\">${STEPS[i].desc}<\/p>\r\n      <\/div>\r\n      <div class=\"mosia-step-body\">${STEPS[i].html}<\/div>\r\n      <div class=\"mosia-step-foot\">\r\n        <button type=\"button\" class=\"mosia-btn mosia-btn-ghost\" id=\"btnPrev\">\u2190 Pr\u00e9c\u00e9dent<\/button>\r\n        ${i === STEPS.length-1\r\n          ? `<button type=\"submit\" class=\"mosia-btn mosia-btn-primary\" id=\"btnSubmit\">Envoyer le dossier<\/button>`\r\n          : `<button type=\"button\" class=\"mosia-btn mosia-btn-primary\" id=\"btnNext\">Suivant \u2192<\/button>`\r\n        }\r\n      <\/div>\r\n    <\/div>\r\n  `;\r\n  document.getElementById('mosia-step-current').textContent = i+1;\r\n  document.getElementById('mosia-step-name').textContent = STEPS[i].title;\r\n  [...trail.children].forEach((el,idx)=&gt;{\r\n    el.className = idx<i>goTo(i-1));\r\n  const nextBtn = document.getElementById('btnNext');\r\n  if(nextBtn) nextBtn.addEventListener('click', ()=&gt;{\r\n    if(validateStep(i)) goTo(i+1);\r\n  });\r\n\r\n  restoreStepValues();\r\n  wireConditionals();\r\n  reopenReveals(); \/\/ ouvre les .mosia-reveal dont la radio \"oui\" \u00e9tait d\u00e9j\u00e0 s\u00e9lectionn\u00e9e\r\n  if(STEPS[i].key === 'recap') buildSummary();\r\n\r\n  card.scrollIntoView({behavior:'smooth', block:'start'});\r\n}\r\nfunction s_eyebrow(i){return STEPS[i].eyebrow;}\r\n\r\nfunction validateStep(i){\r\n  const required = card.querySelectorAll('[required]');\r\n  for(const el of required){\r\n    if(!el.value || (el.type==='checkbox' &amp;&amp; !el.checked)){\r\n      el.focus();\r\n      el.style.borderColor = 'var(--error)';\r\n      return false;\r\n    }\r\n  }\r\n  return true;\r\n}\r\n\r\nfunction goTo(i){\r\n  if(i=STEPS.length) return;\r\n  current = i;\r\n  renderStep(i);\r\n}\r\n\r\n\/* Ouvre automatiquement les blocs conditionnels (.mosia-reveal) si la\r\n   r\u00e9ponse \"oui\" correspondante a d\u00e9j\u00e0 \u00e9t\u00e9 coch\u00e9e pr\u00e9c\u00e9demment. *\/\r\nfunction reopenReveals(){\r\n  const map = {\r\n    mosia_acces_denivellation: 'reveal_denivellation',\r\n    mosia_mobilier_present: 'reveal_mobilier',\r\n    mosia_marches_int_present: 'reveal_marches_int',\r\n    mosia_portes_int_present: 'reveal_portes_int',\r\n    mosia_sanitaire_present: 'reveal_sanitaire',\r\n    mosia_cabines_present: 'reveal_cabines',\r\n    mosia_gaz_present: 'reveal_gaz',\r\n    mosia_eclairage_securite: 'reveal_eclairage_securite',\r\n    mosia_ascenseur_present: 'reveal_ascenseur',\r\n    mosia_cuisson_present: 'reveal_cuisson',\r\n    mosia_ct_produits_dangereux: 'reveal_produits_dangereux'\r\n  };\r\n  Object.entries(map).forEach(([name, revealId])=&gt;{\r\n    const reveal = document.getElementById(revealId);\r\n    if(reveal &amp;&amp; answers[name] === 'oui') reveal.classList.add('show');\r\n  });\r\n}\r\n\r\n\/* conditional reveal wiring: shows .mosia-reveal blocks tied to a \"oui\" radio.\r\n   L'\u00e9tat initial (d\u00e9j\u00e0 r\u00e9pondu) est g\u00e9r\u00e9 par reopenReveals(), appel\u00e9e apr\u00e8s. *\/\r\nfunction wireConditionals(){\r\n  const map = {\r\n    mosia_acces_denivellation: 'reveal_denivellation',\r\n    mosia_mobilier_present: 'reveal_mobilier',\r\n    mosia_marches_int_present: 'reveal_marches_int',\r\n    mosia_portes_int_present: 'reveal_portes_int',\r\n    mosia_sanitaire_present: 'reveal_sanitaire',\r\n    mosia_cabines_present: 'reveal_cabines',\r\n    mosia_gaz_present: 'reveal_gaz',\r\n    mosia_eclairage_securite: 'reveal_eclairage_securite',\r\n    mosia_ascenseur_present: 'reveal_ascenseur',\r\n    mosia_cuisson_present: 'reveal_cuisson',\r\n    mosia_ct_produits_dangereux: 'reveal_produits_dangereux'\r\n  };\r\n  Object.entries(map).forEach(([name, revealId])=&gt;{\r\n    const radios = card.querySelectorAll(`input[name=\"${name}\"]`);\r\n    const reveal = document.getElementById(revealId);\r\n    if(!radios.length || !reveal) return;\r\n    radios.forEach(r=&gt;r.addEventListener('change', ()=&gt;{\r\n      reveal.classList.toggle('show', r.value==='oui' &amp;&amp; r.checked);\r\n    }));\r\n  });\r\n}\r\n\r\n\/* summary builder *\/\r\nfunction buildSummary(){\r\n  const get = k =&gt; (answers[k] &amp;&amp; answers[k].trim()) ? answers[k] : '\u2014';\r\n  const blocks = [\r\n    {title:\"Demandeur\", rows:[\r\n      [\"Nom\", get('mosia_demandeur_nom')],\r\n      [\"T\u00e9l\u00e9phone\", get('mosia_demandeur_tel_mobile')],\r\n      [\"E-mail\", get('mosia_demandeur_email')],\r\n    ]},\r\n    {title:\"\u00c9tablissement\", rows:[\r\n      [\"Nom\", get('mosia_etab_nom')],\r\n      [\"Type d'activit\u00e9\", get('mosia_etab_type_activite')],\r\n      [\"Commune\", get('mosia_etab_commune')],\r\n    ]},\r\n    {title:\"Classement ERP\", rows:[\r\n      [\"Type\", get('mosia_type_etab')],\r\n      [\"Cat\u00e9gorie\", get('mosia_categorie_etab')],\r\n      [\"Effectif total\", get('mosia_effectif_total')],\r\n    ]},\r\n  ];\r\n  document.getElementById('mosiaSummary').innerHTML = blocks.map(b=&gt;`\r\n    <div class=\"mosia-summary-block\">\r\n      <div class=\"mosia-summary-title\">${b.title}<\/div>\r\n      ${b.rows.map(r=&gt;`<div class=\"mosia-summary-row\"><span>${r[0]}<\/span><span>${r[1]}<\/span><\/div>`).join('')}\r\n    <\/div>\r\n  `).join('') + `<div class=\"mosia-help\">Toutes les autres r\u00e9ponses (fa\u00e7ade, accessibilit\u00e9, s\u00e9curit\u00e9 incendie...) seront transmises avec votre dossier.<\/div>`;\r\n}\r\n\r\n\/* =========================================================\r\n   ENVOI \u2014 Web3Forms\r\n   1) Cr\u00e9e un compte gratuit sur https:\/\/web3forms.com\r\n   2) R\u00e9cup\u00e8re ta cl\u00e9 d'acc\u00e8s (\"Access Key\")\r\n   3) Colle-la ci-dessous \u00e0 la place de \"VOTRE_CLE_WEB3FORMS_ICI\"\r\n   ========================================================= *\/\r\nconst WEB3FORMS_ACCESS_KEY = \"VOTRE_CLE_WEB3FORMS_ICI\";\r\n\r\n\/* Libell\u00e9s lisibles pour transformer les noms techniques de champs\r\n   en texte clair dans l'email re\u00e7u. Compl\u00e8te si besoin. *\/\r\nconst FIELD_LABELS = {\r\n  mosia_demandeur_nom:\"Nom et pr\u00e9nom du demandeur\",\r\n  mosia_demandeur_representant:\"Repr\u00e9sentant l\u00e9gal\",\r\n  mosia_demandeur_adresse:\"Adresse du demandeur\",\r\n  mosia_demandeur_commune:\"Commune du demandeur\",\r\n  mosia_demandeur_cp:\"Code postal du demandeur\",\r\n  mosia_demandeur_tel_fixe:\"T\u00e9l\u00e9phone fixe\",\r\n  mosia_demandeur_tel_mobile:\"T\u00e9l\u00e9phone portable\",\r\n  mosia_demandeur_email:\"E-mail du demandeur\",\r\n  mosia_etab_nom:\"Nom de l'\u00e9tablissement\",\r\n  mosia_etab_type_activite:\"Type d'activit\u00e9\",\r\n  mosia_etab_activite_avant:\"Activit\u00e9 avant travaux\",\r\n  mosia_etab_adresse:\"Adresse de l'\u00e9tablissement\",\r\n  mosia_etab_commune:\"Commune de l'\u00e9tablissement\",\r\n  mosia_etab_cp:\"Code postal de l'\u00e9tablissement\",\r\n  mosia_type_etab:\"Type ERP\",\r\n  mosia_categorie_etab:\"Cat\u00e9gorie ERP\",\r\n  mosia_effectif_public:\"Effectif public\",\r\n  mosia_effectif_personnel:\"Effectif personnel\",\r\n  mosia_effectif_total:\"Effectif total\",\r\n  mosia_surface_totale:\"Surface totale (m\u00b2)\",\r\n  mosia_surface_public:\"Surface r\u00e9serv\u00e9e au public (m\u00b2)\",\r\n  mosia_message_libre:\"Message compl\u00e9mentaire\",\r\n  mosia_fichiers_deposes:\"Fichiers d\u00e9pos\u00e9s sur l'espace pCloud\"\r\n};\r\n\r\n\/* Regroupe les champs par section pour un mail lisible *\/\r\nconst SECTION_GROUPS = [\r\n  {title:\"Demandeur\", keys:[\"mosia_demandeur_nom\",\"mosia_demandeur_representant\",\"mosia_demandeur_adresse\",\"mosia_demandeur_commune\",\"mosia_demandeur_cp\",\"mosia_demandeur_tel_fixe\",\"mosia_demandeur_tel_mobile\",\"mosia_demandeur_email\"]},\r\n  {title:\"\u00c9tablissement\", keys:[\"mosia_etab_nom\",\"mosia_etab_type_activite\",\"mosia_etab_activite_avant\",\"mosia_etab_adresse\",\"mosia_etab_commune\",\"mosia_etab_cp\"]},\r\n  {title:\"Classement ERP\", keys:[\"mosia_type_etab\",\"mosia_categorie_etab\",\"mosia_effectif_public\",\"mosia_effectif_personnel\",\"mosia_effectif_total\",\"mosia_surface_totale\",\"mosia_surface_public\"]}\r\n];\r\n\r\nfunction labelFor(key){\r\n  if(FIELD_LABELS[key]) return FIELD_LABELS[key];\r\n  return key.replace(\/^mosia_\/,'').replace(\/^chk_\/,'').replace(\/_\/g,' ');\r\n}\r\n\r\n\/* Construit un r\u00e9sum\u00e9 texte lisible de TOUTES les r\u00e9ponses, group\u00e9 par\r\n   \u00e9tape, \u00e0 partir du store persistant (answers \/ checkedAnswers) \u2014\r\n   et non du DOM, qui ne contient que l'\u00e9tape actuellement affich\u00e9e. *\/\r\nfunction buildPlainTextReport(){\r\n  saveCurrentStepValues(); \/\/ s'assure que l'\u00e9tape affich\u00e9e (recap) est bien \u00e0 jour aussi\r\n  const usedKeys = new Set();\r\n  let out = \"\";\r\n\r\n  SECTION_GROUPS.forEach(group=&gt;{\r\n    out += `\\n=== ${group.title.toUpperCase()} ===\\n`;\r\n    group.keys.forEach(k=&gt;{\r\n      const val = answers[k];\r\n      if(val &amp;&amp; String(val).trim()){ out += `${labelFor(k)} : ${val}\\n`; usedKeys.add(k); }\r\n    });\r\n  });\r\n\r\n  \/\/ Tout le reste (cases \u00e0 cocher, sections techniques) regroup\u00e9 par \u00e9tape,\r\n  \/\/ dans l'ordre du formulaire\r\n  STEPS.forEach(step=&gt;{\r\n    if(['demandeur','etablissement'].includes(step.key)) return; \/\/ d\u00e9j\u00e0 trait\u00e9s au-dessus\r\n    const tmp = document.createElement('div');\r\n    tmp.innerHTML = step.html;\r\n    const namesInStep = [...new Set([...tmp.querySelectorAll('[name]')].map(el=&gt;el.getAttribute('name')))];\r\n    const lines = [];\r\n    namesInStep.forEach(name=&gt;{\r\n      if(usedKeys.has(name) || name === 'mosia_fichiers[]') return;\r\n      usedKeys.add(name);\r\n      const sampleEl = tmp.querySelector(`[name=\"${CSS.escape(name)}\"]`);\r\n      if(!sampleEl) return;\r\n      const type = sampleEl.getAttribute('type');\r\n\r\n      if(type === 'checkbox'){\r\n        if(checkedAnswers[name]) lines.push(`\u2714 ${labelFor(name)}`);\r\n      } else if(type === 'radio'){\r\n        const v = answers[name];\r\n        if(v) lines.push(`${labelFor(name)} : ${v === 'oui' ? 'Oui' : 'Non'}`);\r\n      } else {\r\n        const v = answers[name];\r\n        if(v &amp;&amp; String(v).trim()) lines.push(`${labelFor(name)} : ${v}`);\r\n      }\r\n    });\r\n    if(lines.length){\r\n      out += `\\n=== ${step.title.toUpperCase()} ===\\n` + lines.join('\\n') + '\\n';\r\n    }\r\n  });\r\n\r\n  return out;\r\n}\r\n\r\n\/* form submit \u2014 envoi r\u00e9el via Web3Forms, \u00e0 partir du store persistant *\/\r\nconst mosiaFormEl = document.getElementById('mosiaForm');\r\nmosiaFormEl.addEventListener('submit', async function(e){\r\n  e.preventDefault();\r\n  if(!validateStep(current)) return;\r\n  saveCurrentStepValues();\r\n\r\n  const submitBtn = document.getElementById('btnSubmit');\r\n  if(submitBtn){\r\n    submitBtn.disabled = true;\r\n    submitBtn.textContent = \"Envoi en cours...\";\r\n  }\r\n\r\n  try{\r\n    const fd = new FormData();\r\n    fd.append('access_key', WEB3FORMS_ACCESS_KEY);\r\n    fd.append('subject', `Nouveau dossier ERP \u2014 ${answers['mosia_etab_nom'] || 'sans nom'}`);\r\n    fd.append('from_name', 'Formulaire Dossier ERP \u2014 site MOSIA');\r\n    fd.append('email', answers['mosia_demandeur_email'] || '');\r\n    fd.append('message', buildPlainTextReport());\r\n    \/\/ Les photos\/plans ne passent plus par Web3Forms (r\u00e9serv\u00e9 au plan payant)\r\n    \/\/ mais par l'espace de d\u00e9p\u00f4t pCloud \u2014 voir PCLOUD_UPLOAD_LINK plus haut.\r\n\r\n    const response = await fetch('https:\/\/api.web3forms.com\/submit', {\r\n      method: 'POST',\r\n      body: fd\r\n    });\r\n    const result = await response.json();\r\n\r\n    if(result.success){\r\n      card.innerHTML = `\r\n        <div class=\"mosia-success\">\r\n          <svg class=\"mosia-success-icon\" viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\"><circle cx=\"12\" cy=\"12\" r=\"10\" \/><path d=\"M8 12l3 3 5-6\" \/><\/svg>\r\n          <h3>Dossier transmis avec succ\u00e8s<\/h3>\r\n          <p>Merci, votre dossier ERP a bien \u00e9t\u00e9 envoy\u00e9 \u00e0 MOSIA. Vous recevrez une confirmation par e-mail et serez recontact\u00e9(e) dans les meilleurs d\u00e9lais.<\/p>\r\n        <\/div>\r\n      `;\r\n    } else {\r\n      throw new Error(result.message || \"Erreur lors de l'envoi\");\r\n    }\r\n  } catch(err){\r\n    if(submitBtn){\r\n      submitBtn.disabled = false;\r\n      submitBtn.textContent = \"Envoyer le dossier\";\r\n    }\r\n    alert(\"Une erreur est survenue lors de l'envoi de votre dossier. Merci de r\u00e9essayer, ou de nous contacter directement au 06 83 08 82 85.\\n\\nD\u00e9tail technique : \" + err.message);\r\n  }\r\n});\r\n\r\n\/* init *\/\r\nrenderStep(0);\r\n\r\n});\r\n\r\n\r\n<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_header_footer","meta":{"inspiro_hide_title":false,"inspiro_hide_featured_image":false,"footnotes":""},"class_list":["post-120","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.mosia.fr\/index.php?rest_route=\/wp\/v2\/pages\/120","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.mosia.fr\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.mosia.fr\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.mosia.fr\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.mosia.fr\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=120"}],"version-history":[{"count":199,"href":"https:\/\/www.mosia.fr\/index.php?rest_route=\/wp\/v2\/pages\/120\/revisions"}],"predecessor-version":[{"id":1641,"href":"https:\/\/www.mosia.fr\/index.php?rest_route=\/wp\/v2\/pages\/120\/revisions\/1641"}],"wp:attachment":[{"href":"https:\/\/www.mosia.fr\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=120"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}