/* ==========================================================================
   Page produit (template-page-produit.php) · chargé seulement sur ce gabarit
   Points de rupture du site : mobile < 760 px · tablette 760–1119 px · ordinateur ≥ 1120 px
   Source : dossier « Page Produits », préfixé #pm-page, couleurs ramenées aux variables du thème. Adaptations en fin de fichier.
   Rythme des fonds : Nuit (héros) · Pierre (atouts) · blanc (détail) · Nuit (prix) · Pierre (étapes)
                      · blanc (réalisations) · Nuit (avis) · Pierre (FAQ) · blanc (devis)
   ========================================================================== */
#pm-page .pm-pp{--fd:var(--police-titre,'Red Hat Display',system-ui,sans-serif);--ft:var(--police-texte,'Red Hat Text',system-ui,sans-serif);--ease:cubic-bezier(.2,.7,.2,1);--px:60px;--sec:112px;font-family:var(--ft);color:var(--encre);outline:none}
#pm-page .pm-pp *{box-sizing:border-box}
#pm-page .pm-pp svg:where(:not(.pm-pp-hors svg)){display:block;flex:none}
#pm-page .pm-pp img:where(:not(.pm-pp-hors img)){max-width:100%;height:auto;border-radius:0}
#pm-page .pm-pp :where(a,button,input):where(:not(.pm-pp-hors *)):focus-visible{outline:none;box-shadow:0 0 0 2px var(--blanc),0 0 0 5px var(--ciel-500)}
#pm-page .pm-pp .pm-pp-sombre :where(a,button):focus-visible{box-shadow:0 0 0 2px var(--pic-950),0 0 0 5px var(--ciel-300)}
#pm-page .pm-pp .pm-pp-express :where(a,button,input):focus-visible{box-shadow:0 0 0 2px var(--blanc),0 0 0 5px var(--ciel-500)}
#pm-page .pm-pp-in{max-width:1440px;margin:0 auto;padding-inline:var(--px)}
#pm-page .pm-pp-section{padding-block:var(--sec)}
#pm-page .pm-pp-pierre{background:var(--pierre-50)}
#pm-page .pm-pp [id]{scroll-margin-top:calc(var(--pm-pp-nav-top,0px) + 80px)}
#pm-page .pm-pp-mob,#pm-page .pm-pp-mob-txt{display:none!important}

/* Éléments communs */
#pm-page .pm-pp-surtitre{display:flex;align-items:center;gap:12px;margin:0;font:700 13px var(--fd);letter-spacing:.14em;text-transform:uppercase;color:var(--pic-800)}
#pm-page .pm-pp-surtitre::before{content:"";width:28px;height:1px;background:currentColor;flex:none}
#pm-page .pm-pp-sombre .pm-pp-surtitre{color:var(--ciel-300)}
#pm-page .pm-pp-mini{display:block;font:700 12px/1.3 var(--fd);letter-spacing:.14em;text-transform:uppercase;color:var(--pierre-600)}
#pm-page .pm-pp-mini--ciel{color:var(--ciel-300)}
#pm-page .pm-pp-h1{margin:0;font:700 58px/1.03 var(--fd);letter-spacing:-.025em;color:var(--blanc);text-wrap:balance}
#pm-page .pm-pp-h2{margin:0;font:700 46px/1.06 var(--fd);letter-spacing:-.02em;color:var(--pic-900);text-wrap:balance}
#pm-page .pm-pp-sombre .pm-pp-h2{color:var(--blanc)}
#pm-page .pm-pp-h3{margin:0;font:700 24px/1.2 var(--fd);letter-spacing:-.01em;color:var(--pic-900);text-wrap:balance}
#pm-page .pm-pp-lead{margin:0;font-size:19px;line-height:1.55;color:var(--pierre-700);text-wrap:pretty}
#pm-page .pm-pp-sombre .pm-pp-lead{color:#C9D2E1}
#pm-page .pm-pp-texte{margin:0;font-size:16px;line-height:1.6;color:var(--pierre-700);text-wrap:pretty}
#pm-page .pm-pp-tete{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:16px 48px;align-items:end}
#pm-page .pm-pp-tete__g{display:grid;gap:14px;min-width:0}
#pm-page .pm-pp-pastille,#pm-page .pm-pp .pm-pm-pastille{width:14px;height:14px;border-radius:999px;box-shadow:inset 0 0 0 1px rgba(31,29,26,.35);flex:none;display:inline-block}
#pm-page .pm-pp-badge,#pm-page .pm-pp .pm-pm-badge{position:absolute;left:14px;top:14px;height:32px;margin:0;padding:0 12px 0 8px;display:inline-flex;align-items:center;gap:8px;border-radius:999px;background:var(--blanc);font:700 13px var(--fd);color:var(--pic-900);box-shadow:0 1px 2px rgba(8,21,48,.12);pointer-events:none;white-space:nowrap}
#pm-page .pm-pp-badge svg,#pm-page .pm-pp .pm-pm-badge svg{color:var(--pic-800)}
#pm-page .pm-pp-cadre{width:48px;height:48px;border:1px solid var(--pic-800);color:var(--pic-800);display:grid;place-items:center;flex:none}
#pm-page .pm-pp-cadre--s{width:40px;height:40px}
#pm-page .pm-pp-cadre--ciel{width:44px;height:44px;border-color:var(--ciel-300);color:var(--ciel-300)}
#pm-page .pm-pp-point{position:absolute;top:4px;right:4px;width:10px;height:10px;border-radius:999px;background:var(--pierre-400);box-shadow:0 0 0 2px var(--blanc)}
#pm-page .pm-pp-point[data-etat="ouvert"],#pm-page [data-etat="ouvert"]>.pm-pp-point{background:var(--succes-700)}
#pm-page .pm-pp-lien,#pm-page .pm-pp-lien-fleche{display:inline-flex;align-items:center;gap:8px;min-height:44px;color:var(--pic-800);font:700 15px var(--fd);text-decoration:none}
#pm-page .pm-pp-lien{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}
#pm-page .pm-pp-lien:hover,#pm-page .pm-pp-lien-fleche:hover{color:var(--pic-900);text-decoration:underline}

/* Boutons */
#pm-page .pm-pp-btn{display:inline-flex;align-items:center;justify-content:space-between;gap:14px;border:0;border-radius:999px;font:700 16px var(--fd);letter-spacing:.005em;text-decoration:none;white-space:nowrap;cursor:pointer;transition:background 160ms var(--ease),box-shadow 160ms var(--ease),color 160ms var(--ease)}
#pm-page .pm-pp-btn--action{height:56px;padding:0 7px 0 24px;background:var(--braise-600);color:var(--blanc)}
#pm-page .pm-pp-btn--action:hover{background:var(--braise-700);color:var(--blanc)}
#pm-page .pm-pp-btn--action:active{background:var(--braise-800)}
#pm-page .pm-pp-btn--plein{width:100%}
#pm-page .pm-pp-btn--s{height:48px;padding:0 5px 0 18px;font-size:15px}
#pm-page .pm-pp-disque{width:42px;height:42px;border-radius:999px;background:var(--blanc);color:var(--braise-600);display:grid;place-items:center;flex:none;transition:transform 160ms var(--ease)}
#pm-page .pm-pp-btn--s .pm-pp-disque{width:38px;height:38px}
#pm-page .pm-pp-btn:hover .pm-pp-disque,#pm-page .pm-pp-poseur a:hover .pm-pp-disque{transform:translateX(2px)}
#pm-page .pm-pp-disque--bleu{width:40px;height:40px;background:var(--pic-800);color:var(--blanc)}
#pm-page .pm-pp-disque--clair{background:var(--pic-100);color:var(--pic-800)}
#pm-page .pm-pp-disque--s{width:36px;height:36px}
#pm-page .pm-pp-btn--tel{height:56px;padding:0 20px 0 6px;gap:12px;justify-content:flex-start;background:rgba(255,255,255,.06);box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.55);color:var(--blanc)}
#pm-page .pm-pp-btn--tel:hover{background:rgba(255,255,255,.12);color:var(--blanc)}
#pm-page .pm-pp-tel-disque{position:relative;width:44px;height:44px;border-radius:999px;background:var(--blanc);color:var(--pic-800);display:grid;place-items:center;flex:none}
#pm-page .pm-pp-tel-txt{display:grid;gap:1px;text-align:left}
#pm-page .pm-pp-tel-num{font:700 18px/1.15 var(--fd);font-variant-numeric:tabular-nums}
#pm-page .pm-pp-tel-statut{font:400 13px/1.2 var(--ft);color:#C9D2E1}
#pm-page .pm-pp-btn--contour{width:100%;height:52px;padding:0 6px 0 20px;background:var(--blanc);box-shadow:inset 0 0 0 1.5px var(--pic-800);color:var(--pic-800);font-size:15px}
#pm-page .pm-pp-btn--contour:hover{background:var(--pic-50);color:var(--pic-900)}
#pm-page .pm-pp-btn--blanc{width:100%;height:52px;padding:0 6px 0 20px;background:var(--blanc);color:var(--pic-900);font-size:15px}
#pm-page .pm-pp-btn--blanc:hover{background:var(--pic-50);color:var(--pic-900)}
#pm-page .pm-pp-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px}
#pm-page .pm-pp-actions--haut{margin-top:28px}
#pm-page .pm-pp-note-claire{font-size:14px;color:var(--pierre-700)}

/* 1. Héros */
#pm-page .pm-pp-hero{position:relative;isolation:isolate;background:var(--pic-950);color:var(--blanc)}
#pm-page .pm-pp-hero__fond{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none}
#pm-page .pm-pp-hero__fond img{width:100%;height:100%;object-fit:cover;opacity:var(--pm-fond-op,.3)}
#pm-page .pm-pp-hero__fond::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--pic-950) 0%,rgba(8,21,48,.82) 42%,rgba(8,21,48,.55) 100%)}
#pm-page .pm-pp-hero__in{padding-block:32px 72px}
#pm-page .pm-pp-ariane ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px 10px;font:700 12px var(--fd);letter-spacing:.12em;text-transform:uppercase;color:#C9D2E1}
#pm-page .pm-pp-ariane li+li::before{content:"/";margin-right:10px;color:var(--ciel-300)}
#pm-page .pm-pp-ariane a{color:#C9D2E1;text-decoration:none}
#pm-page .pm-pp-ariane a:hover{color:var(--blanc);text-decoration:underline}
#pm-page .pm-pp-ariane [aria-current]{color:var(--blanc)}
#pm-page .pm-pp-ariane-mobile,#pm-page .pm-pp-hero__photo-mob{display:none}
#pm-page .pm-pp-hero__grille{margin-top:28px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,440px);gap:56px;align-items:center}
#pm-page .pm-pp-hero__grille--seul{grid-template-columns:minmax(0,820px)}
#pm-page .pm-pp-hero__texte{display:grid;gap:20px;min-width:0;justify-items:start}
#pm-page .pm-pp-chapo{margin:0;max-width:640px;font-size:19px;line-height:1.55;color:#C9D2E1;text-wrap:pretty}
#pm-page .pm-pp-points{list-style:none;margin:0;padding:0;display:grid;gap:10px}
#pm-page .pm-pp-points li{display:flex;align-items:center;gap:10px;font-size:16px;color:var(--blanc)}
#pm-page .pm-pp-points strong{font-weight:700}
#pm-page .pm-pp-coche{width:24px;height:24px;border-radius:999px;background:rgba(81,207,244,.16);color:var(--ciel-300);display:grid;place-items:center;flex:none}
#pm-page .pm-pp-note{margin:0;display:flex;align-items:center;gap:8px;font-size:15px;color:#C9D2E1}
#pm-page .pm-pp-note strong{color:var(--blanc)}
/* Devis express */
#pm-page .pm-pp-express{justify-self:end;width:100%;max-width:440px;background:var(--blanc);color:var(--encre);border-radius:16px;overflow:hidden;box-shadow:0 32px 72px -24px rgba(0,0,0,.55)}
#pm-page .pm-pp-express__photo{position:relative;aspect-ratio:16/7;background:var(--pierre-100);overflow:hidden}
#pm-page .pm-pp-express__photo img{width:100%;height:100%;object-fit:cover}
#pm-page .pm-pp-express__voir{position:absolute;right:12px;top:14px;height:32px;padding:0 12px;display:inline-flex;align-items:center;border-radius:999px;background:rgba(8,21,48,.78);color:var(--blanc);font:700 13px var(--fd);text-decoration:none}
#pm-page .pm-pp-express__voir:hover{background:var(--pic-950);color:var(--blanc)}
#pm-page .pm-pp-express__corps{padding:20px 24px 22px;display:grid;gap:12px}
#pm-page .pm-pp-express__etape{margin:0;display:flex;justify-content:space-between;gap:12px;font:700 12px var(--fd);letter-spacing:.12em;text-transform:uppercase;color:var(--pic-800)}
#pm-page .pm-pp-express__etape span+span{color:var(--pierre-600)}
#pm-page .pm-pp-express__t{margin:0;font:700 24px/1.2 var(--fd);letter-spacing:-.01em;color:var(--pic-900)}
#pm-page .pm-pp-express__projet{margin:0;display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:12px;background:var(--succes-100);color:var(--succes-700);font-size:14px}
#pm-page .pm-pp-express__type{margin:0;padding:0;border:0;display:grid;gap:8px;min-width:0}
#pm-page .pm-pp-express__type legend,#pm-page .pm-pp-express__label{padding:0;font:700 14px var(--fd);color:var(--pic-900)}
#pm-page .pm-pp-express__type div{display:grid;grid-template-columns:1fr 1fr;gap:8px}
#pm-page .pm-pp-express__type button{height:48px;border:1px solid var(--pierre-300);border-radius:12px;background:var(--blanc);color:var(--encre);font:600 15px var(--ft);cursor:pointer}
#pm-page .pm-pp-express__type button[aria-pressed="true"]{border:2px solid var(--pic-800);background:var(--pic-50);color:var(--pic-900);font-weight:700}
#pm-page .pm-pp-express__cp{width:100%;height:52px;padding:0 16px;border:1px solid var(--pierre-300);border-radius:12px;background:var(--blanc);font:600 17px var(--ft);color:var(--encre);letter-spacing:.04em}
#pm-page .pm-pp-express__cp[aria-invalid="true"]{border:2px solid var(--erreur-700)}
#pm-page .pm-pp-express__msg{margin:-4px 0 0;display:flex;align-items:flex-start;gap:6px;font-size:13px;line-height:1.4;color:var(--pierre-700)}
#pm-page .pm-pp-express__msg[data-etat="ok"]{color:var(--succes-700)}
#pm-page .pm-pp-express__msg[data-etat="erreur"]{color:var(--erreur-700)}
#pm-page .pm-pp-express__msg[data-etat="hors"]{color:var(--alerte-700)}
#pm-page .pm-pp-express__msg svg{margin-top:1px}
#pm-page .pm-pp-express__rass{margin:0;display:flex;flex-wrap:wrap;justify-content:center;gap:6px 16px;font:600 13px/1.3 var(--ft);color:var(--encre)}
#pm-page .pm-pp-express__rass span{display:inline-flex;align-items:center;gap:6px}
#pm-page .pm-pp-express__rass span:first-child svg{color:var(--succes-700)}
#pm-page .pm-pp-express__rass span:last-child svg{color:var(--etoile)}
#pm-page .pm-pp-express__rgpd{margin:0;display:flex;gap:8px;align-items:flex-start;font-size:13px;line-height:1.4;color:var(--pierre-700)}
#pm-page .pm-pp-express__rgpd svg{color:var(--pierre-600);margin-top:1px}
/* Bande de preuves */
#pm-page .pm-pp-preuves{list-style:none;margin:0;padding:0 var(--px);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:rgba(8,21,48,.55);border-top:1px solid rgba(255,255,255,.14)}
#pm-page .pm-pp-preuves li{display:flex;align-items:center;gap:14px;padding:18px 24px;min-width:0}
#pm-page .pm-pp-preuves li+li{border-left:1px solid rgba(255,255,255,.14)}
#pm-page .pm-pp-preuve__ic{width:40px;height:40px;border-radius:999px;box-shadow:inset 0 0 0 1px var(--ciel-300);color:var(--ciel-300);display:grid;place-items:center;flex:none}
#pm-page .pm-pp-preuve__t{display:block;font:700 15px/1.25 var(--fd);color:var(--blanc)}
#pm-page .pm-pp-preuve__s{display:block;font-size:13px;line-height:1.3;color:#C9D2E1}

/* 2. Menu de page (collant, suit le masquage du header) */
#pm-page .pm-pp-nav{position:sticky;top:var(--pm-pp-nav-top,0px);z-index:40;background:rgba(255,255,255,.96);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--pierre-200);transition:top 240ms var(--ease)}
#pm-page .pm-pp-nav__in{display:flex;align-items:center;gap:16px;min-height:64px}
#pm-page .pm-pp-nav ul{list-style:none;margin:0;padding:0;display:flex;gap:4px;flex:1;min-width:0;overflow-x:auto;scrollbar-width:none}
#pm-page .pm-pp-nav ul a{height:44px;padding:0 14px;display:inline-flex;align-items:center;border-radius:999px;color:var(--pierre-700);font:600 15px var(--ft);text-decoration:none;white-space:nowrap}
#pm-page .pm-pp-nav ul a:hover{color:var(--pic-900);background:var(--pic-50)}
#pm-page .pm-pp-nav ul a[aria-current="true"]{background:var(--pic-800);color:var(--blanc)}
#pm-page .pm-pp-nav__cta{height:48px;padding:0 5px 0 18px;font-size:15px;opacity:0;visibility:hidden;transform:translateY(4px);transition:opacity 240ms var(--ease),transform 240ms var(--ease),visibility 0s linear 240ms}
#pm-page .pm-pp-nav__cta .pm-pp-disque{width:38px;height:38px}
#pm-page .pm-pp-nav.is-cta .pm-pp-nav__cta{opacity:1;visibility:visible;transform:none;transition-delay:0s}

/* 3. Atouts */
#pm-page .pm-pp-atouts{list-style:none;margin:40px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
#pm-page .pm-pp-atouts li{display:grid;gap:12px;align-content:start;padding:28px;border-radius:16px;background:var(--blanc);box-shadow:0 1px 2px rgba(8,21,48,.06)}
#pm-page .pm-pp-atout__t{margin:4px 0 0;font:700 19px/1.25 var(--fd);color:var(--pic-900)}
#pm-page .pm-pp-atout__d{margin:0;font-size:15px;line-height:1.55;color:var(--pierre-700);text-wrap:pretty}
#pm-page .pm-pp-choix{margin-top:20px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
#pm-page .pm-pp-choix>div{padding:24px 28px;border-radius:16px;background:var(--blanc);display:grid;gap:12px;align-content:start}
#pm-page .pm-pp-choix__pour{box-shadow:inset 0 0 0 1.5px var(--pic-800)}
#pm-page .pm-pp-choix__t{margin:0;display:flex;align-items:center;gap:10px;font:700 17px var(--fd);color:var(--pic-900)}
#pm-page .pm-pp-choix__t svg{color:var(--pic-800)}
#pm-page .pm-pp-choix__pour ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
#pm-page .pm-pp-choix__pour li{display:flex;gap:10px;align-items:flex-start;font-size:15px;line-height:1.45}
#pm-page .pm-pp-choix__pour li svg{color:var(--succes-700);margin-top:3px}
#pm-page .pm-pp-autre{min-height:52px;display:flex;justify-content:space-between;align-items:center;gap:12px 20px;border-top:1px solid var(--pierre-100);text-decoration:none}
#pm-page .pm-pp-autre:first-of-type{border-top:0}
#pm-page .pm-pp-autre__q{font-size:15px;line-height:1.4;color:var(--pierre-700)}
#pm-page .pm-pp-autre__l{display:inline-flex;align-items:center;gap:8px;font:700 15px var(--fd);color:var(--pic-800);white-space:nowrap}
#pm-page .pm-pp-autre:hover .pm-pp-autre__l{text-decoration:underline}
#pm-page .pm-pp-ouv{margin-top:20px;padding:18px 24px;border-radius:16px;background:var(--blanc);display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;box-shadow:0 1px 2px rgba(8,21,48,.06)}
#pm-page .pm-pp-ouv__t{display:inline-flex;align-items:center;gap:10px;font:700 16px var(--fd);color:var(--pic-900)}
#pm-page .pm-pp-ouv__t svg{color:var(--pic-800)}
#pm-page .pm-pp-ouv ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
#pm-page .pm-pp-ouv li{height:36px;padding:0 14px;display:inline-flex;align-items:center;border-radius:999px;background:var(--pic-50);font:600 14px var(--ft);color:var(--pic-900);white-space:nowrap}
#pm-page .pm-pp-ouv .pm-pp-lien-fleche{margin-left:auto}

/* 4. En détail */
#pm-page .pm-pp-det{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:56px;align-items:start}
#pm-page .pm-pp-det__g{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;min-width:0}
#pm-page .pm-pp-acc{margin-top:18px;border-top:1px solid var(--pierre-200)}
#pm-page .pm-pp-acc__item{border-bottom:1px solid var(--pierre-200)}
#pm-page .pm-pp-acc__h{margin:0}
#pm-page .pm-pp-acc__h button{width:100%;min-height:68px;padding:12px 0;display:flex;align-items:center;gap:16px;border:0;background:none;text-align:left;cursor:pointer;font:700 18px/1.3 var(--fd);color:var(--pic-900)}
#pm-page .pm-pp-acc__t{flex:1;min-width:0}
#pm-page .pm-pp-plusmoins{width:32px;height:32px;border-radius:999px;background:var(--pic-100);color:var(--pic-800);display:grid;place-items:center;flex:none}
#pm-page .pm-pp-plusmoins svg+svg,#pm-page [aria-expanded="true"] .pm-pp-plusmoins svg:first-child{display:none}
#pm-page [aria-expanded="true"] .pm-pp-plusmoins{background:var(--pic-800);color:var(--blanc)}
#pm-page [aria-expanded="true"] .pm-pp-plusmoins svg+svg{display:block}
#pm-page [aria-expanded="true"] .pm-pp-cadre{background:var(--pic-800);color:var(--blanc)}
#pm-page .pm-pp-acc__r{padding:0 52px 22px 56px;display:grid;gap:12px;min-width:0}
#pm-page .pm-pp-acc__r p{margin:0;font-size:16px;line-height:1.6;color:var(--pierre-700);text-wrap:pretty}
#pm-page .pm-pp-acc__r ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
#pm-page .pm-pp-acc__r li{display:flex;gap:10px;align-items:flex-start;font-size:15px;line-height:1.45}
#pm-page .pm-pp-acc__r li svg{color:var(--succes-700);margin-top:3px}
#pm-page .pm-pp-acc__r .pm-pp-lien-fleche{justify-self:start;max-width:100%;white-space:normal}
#pm-page .pm-pp-det__note{margin:8px 0 0;display:flex;gap:8px;align-items:flex-start;font-size:13px;line-height:1.45;color:var(--pierre-600)}
#pm-page .pm-pp-conseil{position:sticky;top:calc(var(--pm-pp-nav-top,0px) + 88px);border-radius:16px;background:var(--pic-950);color:var(--blanc);overflow:visible;margin-top:96px}
#pm-page .pm-pp-conseil__photo{display:block;margin:-96px 24px 0;height:200px}
#pm-page .pm-pp-conseil__photo img{width:100%;height:100%;object-fit:contain;object-position:bottom}
#pm-page .pm-pp-conseil__corps{padding:24px 28px 28px;display:grid;gap:12px}
#pm-page .pm-pp-conseil__t{margin:0;font:700 22px/1.25 var(--fd);color:var(--blanc);text-wrap:balance}
#pm-page .pm-pp-conseil__d{margin:0;font-size:15px;line-height:1.55;color:#C9D2E1}
#pm-page .pm-pp-conseil__tel{min-height:44px;display:flex;align-items:center;gap:10px;color:var(--blanc);text-decoration:none}
#pm-page .pm-pp-conseil__tel:hover{color:var(--ciel-300)}

/* 5. Prix */
#pm-page .pm-pp-prix{position:relative;isolation:isolate;overflow:hidden;background:var(--pic-950);color:var(--blanc)}
#pm-page .pm-pp-prix__fond{position:absolute;inset:0;z-index:-1;pointer-events:none}
#pm-page .pm-pp-prix__fond img{width:100%;height:100%;object-fit:cover;opacity:var(--pm-fond-op,.3)}
#pm-page .pm-pp-prix__fond::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--pic-950) 0%,rgba(8,21,48,.82) 42%,rgba(8,21,48,.55) 100%)}
#pm-page .pm-pp-prix .pm-pp-in{display:grid;gap:18px}
#pm-page .pm-pp-prix .pm-pp-lead{max-width:760px}
#pm-page .pm-pp-facteurs{list-style:none;margin:14px 0 10px;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
#pm-page .pm-pp-facteurs li{display:flex;gap:14px;align-items:flex-start;padding:20px;border-radius:16px;background:rgba(255,255,255,.06);box-shadow:inset 0 0 0 1px rgba(255,255,255,.14)}
#pm-page .pm-pp-facteur__t{display:block;font:700 16px/1.3 var(--fd);color:var(--blanc)}
#pm-page .pm-pp-facteur__d{display:block;margin-top:4px;font-size:14px;line-height:1.5;color:#C9D2E1}
#pm-page .pm-pp-aides{min-height:44px;display:inline-flex;align-items:center;gap:8px;color:var(--blanc);font:600 15px var(--ft);text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}
#pm-page .pm-pp-aides svg{color:var(--ciel-300)}
#pm-page .pm-pp-aides:hover{color:var(--ciel-300)}

/* 6. Étapes */
#pm-page .pm-pp-etapes{list-style:none;margin:40px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
#pm-page .pm-pp-etapes li{display:grid;gap:14px;align-content:start;padding:28px;border-radius:16px;background:var(--blanc);box-shadow:0 1px 2px rgba(8,21,48,.06)}
#pm-page .pm-pp-etapes li>span:last-child{display:grid;gap:6px}
#pm-page .pm-pp-etape__ic{width:48px;height:48px;border-radius:999px;background:var(--pic-100);color:var(--pic-800);display:grid;place-items:center}
#pm-page .pm-pp-etape--fin .pm-pp-etape__ic{background:var(--pic-800);color:var(--blanc)}
#pm-page .pm-pp-etape__t{margin:0;font:700 19px/1.25 var(--fd);color:var(--pic-900)}
#pm-page .pm-pp-etape__d{font-size:15px;line-height:1.55;color:var(--pierre-700);text-wrap:pretty}

/* 7. Réalisations + bloc local */
#pm-page .pm-pp-real-tete{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px 48px}
#pm-page .pm-pp-reals{list-style:none;margin:40px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
#pm-page .pm-pp-real{min-width:0}
#pm-page .pm-pp-real a{display:grid;gap:10px;color:inherit;text-decoration:none}
#pm-page .pm-pp-real__photo{position:relative;display:block;aspect-ratio:4/3;border-radius:16px;overflow:hidden;background:var(--pierre-100)}
#pm-page .pm-pp-real__photo img{width:100%;height:100%;object-fit:cover;transition:transform 600ms var(--ease)}
#pm-page .pm-pp-real a:hover img{transform:scale(1.04)}
#pm-page .pm-pp-real__meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;font-size:13px;color:var(--pierre-600)}
#pm-page .pm-pp-real__titre{font:700 18px/1.3 var(--fd);color:var(--pic-900);text-wrap:balance}
#pm-page .pm-pp-real a:hover .pm-pp-real__titre{text-decoration:underline}
#pm-page .pm-pp-poseur a{position:relative;height:100%;min-height:320px;display:flex;align-items:flex-end;border-radius:16px;background:var(--pic-950);color:var(--blanc);text-decoration:none;overflow:visible}
#pm-page .pm-pp-poseur__img{position:absolute;right:-8px;bottom:0;height:112%;pointer-events:none}
#pm-page .pm-pp-poseur__img img{height:100%;width:auto;transition:transform 240ms var(--ease)}
#pm-page .pm-pp-poseur a:hover .pm-pp-poseur__img img{transform:translateY(-6px) scale(1.02)}
#pm-page .pm-pp-poseur__corps{position:relative;padding:22px;display:grid;gap:8px;max-width:72%}
#pm-page .pm-pp-poseur__t{font:700 20px/1.2 var(--fd)}
#pm-page .pm-pp-poseur__d{font-size:14px;line-height:1.45;color:#C9D2E1}
#pm-page .pm-pp-poseur .pm-pp-btn{margin-top:6px;justify-self:start}
#pm-page .pm-pp-local{margin-top:40px;padding:28px 32px;border-radius:16px;background:var(--pierre-50);display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:24px 48px;align-items:start}
#pm-page .pm-pp-local>div{display:grid;gap:10px}
#pm-page .pm-pp-villes{display:grid;gap:10px}
#pm-page .pm-pp-villes ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
#pm-page .pm-pp-villes ul a{height:40px;padding:0 14px 0 10px;display:inline-flex;align-items:center;gap:6px;border-radius:999px;background:var(--blanc);box-shadow:inset 0 0 0 1px var(--pierre-200);color:var(--pic-900);font:600 14px var(--ft);text-decoration:none}
#pm-page .pm-pp-villes ul a svg{color:var(--pic-800)}
#pm-page .pm-pp-villes ul a:hover{box-shadow:inset 0 0 0 1.5px var(--pic-800)}

/* 8. Avis ([pm_avis]) · 9. FAQ */
#pm-page .pm-pp-avis{position:relative}
#pm-page .pm-pp-faq{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr);gap:64px;align-items:start}
#pm-page .pm-pp-faq__g{display:grid;gap:18px;align-content:start}
#pm-page .pm-pp-faq__tel{margin-top:10px;padding:20px 22px;border-radius:16px;background:var(--blanc);display:grid;gap:4px;box-shadow:0 1px 2px rgba(8,21,48,.06)}
#pm-page .pm-pp-faq__num{font:700 24px/1.2 var(--fd);color:var(--pic-900);text-decoration:none;font-variant-numeric:tabular-nums}
#pm-page .pm-pp-faq__num:hover{color:var(--pic-800);text-decoration:underline}
#pm-page .pm-pp-faq__statut{font-size:14px;color:var(--pierre-700)}
#pm-page .pm-pp-acc--faq{margin-top:0;border-top:0;display:grid;gap:12px}
#pm-page .pm-pp-acc--faq .pm-pp-acc__item{border:0;border-radius:16px;background:var(--blanc);padding:0 22px;box-shadow:0 1px 2px rgba(8,21,48,.06)}
#pm-page .pm-pp-acc--faq .pm-pp-acc__item:has([aria-expanded="true"]){box-shadow:inset 0 0 0 1.5px var(--pic-800),0 16px 40px -20px rgba(8,21,48,.25)}
#pm-page .pm-pp-acc--faq .pm-pp-acc__h button{font-size:17px}
#pm-page .pm-pp-acc--faq .pm-pp-acc__r{padding:0 48px 22px 0}
#pm-page .pm-pp-liens{margin-top:56px;padding-top:32px;border-top:1px solid var(--pierre-200);display:grid;gap:14px}
#pm-page .pm-pp-liens ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
#pm-page .pm-pp-liens a{height:100%;min-height:76px;padding:14px 16px;display:flex;align-items:center;gap:14px;border-radius:16px;background:var(--blanc);color:inherit;text-decoration:none;box-shadow:0 1px 2px rgba(8,21,48,.06)}
#pm-page .pm-pp-liens a:hover{box-shadow:inset 0 0 0 1.5px var(--pic-800)}
#pm-page .pm-pp-liens a>span:nth-child(2){flex:1;min-width:0;display:grid;gap:2px}
#pm-page .pm-pp-lien__t{font:700 16px/1.25 var(--fd);color:var(--pic-900)}
#pm-page .pm-pp-lien__d{font-size:13px;line-height:1.35;color:var(--pierre-700)}
#pm-page .pm-pp-liens a>svg{color:var(--pierre-500)}

/* ---------- Tablette (760–1119 px) ---------- */
/* Lien dans un chapô (ex. « service après-vente » vers la page SAV) */
#pm-page .pm-pp-lead a{color:var(--pic-800);font-weight:600;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
#pm-page .pm-pp-lead a:hover{color:var(--pic-900)}
#pm-page .pm-pp-sombre .pm-pp-lead a,#pm-page .pm-pp-sombre .pm-pp-lead a:hover{color:#fff}

@media (max-width:1119.98px){
#pm-page .pm-pp{--px:32px;--sec:88px}
#pm-page .pm-pp-h1{font-size:48px}
#pm-page .pm-pp-h2{font-size:38px}
#pm-page .pm-pp-hero__in{padding-block:28px 56px}
#pm-page .pm-pp-hero__grille{grid-template-columns:minmax(0,1fr);gap:36px}
#pm-page .pm-pp-express{justify-self:start;max-width:560px}
#pm-page .pm-pp-preuves{grid-template-columns:repeat(2,minmax(0,1fr))}
#pm-page .pm-pp-preuves li:nth-child(3){border-left:0}
#pm-page .pm-pp-preuves li:nth-child(n+3){border-top:1px solid rgba(255,255,255,.14)}
#pm-page .pm-pp-tete,#pm-page .pm-pp-local,#pm-page .pm-pp-faq{grid-template-columns:minmax(0,1fr)}
#pm-page .pm-pp-faq{gap:32px}
#pm-page .pm-pp-atouts,#pm-page .pm-pp-etapes,#pm-page .pm-pp-facteurs,#pm-page .pm-pp-reals,#pm-page .pm-pp-liens ul{grid-template-columns:repeat(2,minmax(0,1fr))}
#pm-page .pm-pp-det{grid-template-columns:minmax(0,1fr)}
#pm-page .pm-pp-conseil{position:relative;top:auto;max-width:560px}
#pm-page .pm-pp-ouv .pm-pp-lien-fleche{margin-left:0}
#pm-page .pm-pp-nav__cta{display:none}
}

/* ---------- Mobile (< 760 px) ---------- */
@media (max-width:759.98px){
#pm-page .pm-pp{--px:20px;--sec:64px}
#pm-page .pm-pp-ordi,#pm-page .pm-pp-ordi-txt{display:none!important}
#pm-page .pm-pp-mob{display:inline-flex!important}
#pm-page .pm-pp-mob-txt{display:inline!important}
#pm-page .pm-pp-h1{font-size:34px}
#pm-page .pm-pp-h2{font-size:30px}
#pm-page .pm-pp-h3{font-size:20px}
#pm-page .pm-pp-lead,#pm-page .pm-pp-chapo{font-size:17px}
/* Héros : photo 16:10, texte centré, bouton devis visible sans défiler */
#pm-page .pm-pp-hero__fond img{opacity:var(--pm-fond-op,.26)}
#pm-page .pm-pp-hero__fond::after{background:linear-gradient(180deg,rgba(8,21,48,.55) 0%,rgba(8,21,48,.88) 60%,var(--pic-950) 100%)}
#pm-page .pm-pp-hero__in{padding-block:8px 32px}
#pm-page .pm-pp-ariane{display:none}
#pm-page .pm-pp-ariane-mobile{display:block}
#pm-page .pm-pp-ariane-mobile a{min-height:44px;display:inline-flex;align-items:center;gap:6px;color:var(--blanc);font:700 12px var(--fd);letter-spacing:.12em;text-transform:uppercase;text-decoration:none}
#pm-page .pm-pp-hero__photo-mob{display:block;position:relative;margin:8px calc(var(--px) * -1) 0;aspect-ratio:16/10;background:#13254A;overflow:hidden}
#pm-page .pm-pp-hero__photo-mob img{width:100%;height:100%;object-fit:cover}
#pm-page .pm-pp-hero__photo-mob .pm-pp-badge{top:auto;bottom:12px;left:12px}
#pm-page .pm-pp-hero__grille{margin-top:20px;gap:20px}
#pm-page .pm-pp-hero__texte{gap:16px;justify-items:center;text-align:center}
#pm-page .pm-pp-hero .pm-pp-surtitre{justify-content:center}
#pm-page .pm-pp-hero .pm-pp-surtitre::before{display:none}
#pm-page .pm-pp-points{justify-items:center}
#pm-page .pm-pp-points li{font-size:15px}
#pm-page .pm-pp-actions{width:100%;justify-content:center}
#pm-page .pm-pp-hero .pm-pp-btn--action,#pm-page .pm-pp-hero .pm-pp-btn--tel{width:100%}
#pm-page .pm-pp-hero .pm-pp-btn--tel{justify-content:center}
#pm-page .pm-pp-express{display:none}
#pm-page .pm-pp-preuves{padding:0;grid-template-columns:1fr 1fr}
#pm-page .pm-pp-preuves li{flex-direction:column;text-align:center;gap:8px;padding:16px 10px}
#pm-page .pm-pp-preuves li:nth-child(odd){border-left:0}
#pm-page .pm-pp-preuves li:nth-child(even){border-left:1px solid rgba(255,255,255,.14)}
#pm-page .pm-pp-preuve__ic{width:36px;height:36px}
#pm-page .pm-pp-preuve__t{font-size:14px}
#pm-page .pm-pp-preuve__s{font-size:12px}
/* Menu de page : pastilles qui défilent, sans bouton (barre d'action mobile) */
#pm-page .pm-pp-nav__in{min-height:56px;padding-inline:0}
#pm-page .pm-pp-nav ul{padding-inline:var(--px)}
#pm-page .pm-pp-nav ul a{height:40px;padding:0 12px;font-size:14px}
/* Blocs */
#pm-page .pm-pp-atouts,#pm-page .pm-pp-etapes,#pm-page .pm-pp-facteurs,#pm-page .pm-pp-choix,#pm-page .pm-pp-liens ul{grid-template-columns:minmax(0,1fr);gap:12px}
#pm-page .pm-pp-atouts{margin-top:28px}
#pm-page .pm-pp-atouts li,#pm-page .pm-pp-etapes li{padding:20px}
#pm-page .pm-pp-etapes{margin-top:28px}
#pm-page .pm-pp-etapes li{grid-template-columns:48px minmax(0,1fr)}
#pm-page .pm-pp-choix>div{padding:20px}
#pm-page .pm-pp-autre{flex-direction:column;align-items:flex-start;gap:4px;padding-block:10px}
#pm-page .pm-pp-ouv{padding:16px}
#pm-page .pm-pp-acc__h button{font-size:17px;gap:12px}
#pm-page .pm-pp-acc__r{padding:0 0 20px}
#pm-page .pm-pp-conseil{margin-top:88px}
#pm-page .pm-pp-conseil__photo{height:160px;margin:-88px 16px 0}
#pm-page .pm-pp-conseil__corps{padding:20px}
#pm-page .pm-pp-actions--haut .pm-pp-btn{width:100%}
#pm-page .pm-pp-prix .pm-pp-btn{width:100%}
/* Réalisations : carrousel au doigt */
#pm-page .pm-pp-reals{margin:28px calc(var(--px) * -1) 0;padding:0 var(--px);grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:84%;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
#pm-page .pm-pp-reals>li{scroll-snap-align:start}
#pm-page .pm-pp-poseur__corps{max-width:66%;padding:18px}
#pm-page .pm-pp-local{padding:20px;margin-top:28px}
#pm-page .pm-pp-btn--contour.pm-pp-mob{margin-top:20px;display:flex!important}
#pm-page .pm-pp-faq{gap:24px}
#pm-page .pm-pp-acc--faq .pm-pp-acc__item{padding:0 16px}
#pm-page .pm-pp-acc--faq .pm-pp-acc__r{padding:0 0 18px}
#pm-page .pm-pp-liens{margin-top:40px}
}

@media (prefers-reduced-motion:reduce){
#pm-page .pm-pp *,#pm-page .pm-pp-nav,#pm-page .pm-pp-nav__cta{transition:none!important}
#pm-page .pm-pp-real a:hover img,#pm-page .pm-pp-poseur a:hover .pm-pp-poseur__img img{transform:none}
}

/* ==========================================================================
   Adaptations au site (hors dossier)
   ========================================================================== */
/* Blocs du site rendus dans la page (avis, devis) : gardent leurs propres styles. */
#pm-page .pm-pp-hors{display:block}
/* Hello Elementor et Kit : titres, boutons et liens ramenés au dessin de la page. */
#pm-page .pm-pp-h1,#pm-page .pm-pp-h2,#pm-page .pm-pp-h3,#pm-page .pm-pp-atout__t,#pm-page .pm-pp-etape__t,#pm-page .pm-pp-express__t{text-transform:none}
#pm-page .pm-pp-acc__h button{white-space:normal;border-radius:0;text-transform:none;letter-spacing:normal}
#pm-page .pm-pp-express__type button{padding:0 8px;white-space:normal;line-height:1.2;text-transform:none;letter-spacing:normal}
#pm-page button.pm-pp-btn{text-transform:none}
#pm-page .pm-pp-acc__r a:not(.pm-pp-lien-fleche){color:var(--pic-800);text-decoration:underline;text-underline-offset:3px}
#pm-page .pm-pp-note .pm-etoiles{display:inline-flex;gap:2px}
/* Emplacement photo à remplir (mode démonstration et équipe connectée). */
#pm-page .pm-pp .pm-pm-vide{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;gap:4px;padding:12px;text-align:center;border:1px dashed var(--pierre-400);color:var(--pierre-600);font:400 13px/1.35 var(--ft)}
#pm-page .pm-pp .pm-pm-vide svg{margin-bottom:4px;opacity:.75}
#pm-page .pm-pp .pm-pm-vide__t{font:700 14px/1.3 var(--fd);color:var(--pierre-700)}
#pm-page .pm-pp-hero__photo-mob .pm-pm-vide{border-color:rgba(255,255,255,.4);color:#C9D2E1}
#pm-page .pm-pp-hero__photo-mob .pm-pm-vide__t{color:var(--blanc)}
/* « Un autre choix si… » : picto à la place de la pastille pour les produits définis par un type. */
#pm-page .pm-pp-picto{display:inline-grid;place-items:center;flex:none;color:var(--pic-800)}
/* Libellés longs : deux lignes possibles sur mobile et dans les colonnes étroites. */
@media (max-width:1119.98px){
#pm-page .pm-pp-btn--contour{white-space:normal;height:auto;min-height:52px;padding-block:6px;text-align:left;line-height:1.2}
}
@media (max-width:759.98px){
#pm-page .pm-pp-btn--action{white-space:normal;height:auto;min-height:56px;padding-block:8px;text-align:left;line-height:1.25}
#pm-page .pm-pp-ouv li{white-space:normal;height:auto;min-height:36px;padding-block:6px}
}
/* Tuile poseur : texte sur toute la largeur, dégradé sous le texte (la photo détourée est plus large que prévu) */
#pm-page .pm-pp-poseur__corps{max-width:none;width:100%;padding-top:64px;border-radius:0 0 16px 16px;background:linear-gradient(to top,rgb(8 21 48) 66%,rgb(8 21 48 / 0))}
#pm-page .pm-pp-poseur__img{right:0}
#pm-page p.pm-pp-villes{margin:0;align-content:start}
/* Mobile : photo du héros plus basse (bouton devis visible sans défiler), bouton du bloc conseil sur deux lignes */
@media (max-width:759.98px){
#pm-page .pm-pp-hero__photo-mob{aspect-ratio:auto;height:min(50vw,24svh)}
#pm-page .pm-pp-btn--blanc{white-space:normal;height:auto;min-height:52px;padding-block:6px;text-align:left;line-height:1.2}
#pm-page .pm-pp-conseil__corps{min-width:0}
}
/* Mobile : rail des réalisations calé sur la marge, téléphone du bloc conseil sur une ligne */
@media (max-width:759.98px){
#pm-page .pm-pp-reals{scroll-padding-inline:var(--px)}
#pm-page .pm-pp-conseil__tel{flex-wrap:wrap;row-gap:2px}
#pm-page .pm-pp-conseil__tel .pm-pp-tel-num{white-space:nowrap}
}
/* Téléphones peu hauts (barres du navigateur affichées) : photo plus basse et points masqués, pour garder le bouton devis visible sans défiler */
@media (max-width:759.98px) and (max-height:700px){
#pm-page .pm-pp-hero__photo-mob{height:min(50vw,18svh)}
#pm-page .pm-pp-points{display:none}
}

/* Réalisations (13 octobre 2026). Ordinateur : avec 1 ou 2 chantiers, la tuile poseur occupe les colonnes restantes (plus de cases vides). */
@media (min-width:1120px){
#pm-page .pm-pp-reals--n1 .pm-pp-poseur{grid-column:span 3}
#pm-page .pm-pp-reals--n2 .pm-pp-poseur{grid-column:span 2}
#pm-page :is(.pm-pp-reals--n1,.pm-pp-reals--n2) .pm-pp-poseur a{align-items:center}
#pm-page :is(.pm-pp-reals--n1,.pm-pp-reals--n2) .pm-pp-poseur__corps{max-width:56%;padding:32px;background:none;border-radius:16px 0 0 16px}
#pm-page :is(.pm-pp-reals--n1,.pm-pp-reals--n2) .pm-pp-poseur__t{font-size:24px}
#pm-page :is(.pm-pp-reals--n1,.pm-pp-reals--n2) .pm-pp-poseur__img{right:4%}
}
/* Tablette : 2 chantiers + tuile poseur, la tuile prend la ligne entière. */
@media (min-width:760px) and (max-width:1119.98px){
#pm-page .pm-pp-reals--n2 .pm-pp-poseur{grid-column:1 / -1}
#pm-page .pm-pp-reals--n2 .pm-pp-poseur a{align-items:center}
#pm-page .pm-pp-reals--n2 .pm-pp-poseur__corps{max-width:60%;padding:28px;background:none}
}
/* Mobile : le carrousel coupe tout ce qui dépasse en haut ; la tête du poseur garde sa place dans la marge intérieure. */
@media (max-width:759.98px){
#pm-page .pm-pp-reals{margin-top:8px;padding-top:22px}
#pm-page .pm-pp-poseur__img{height:106%}
#pm-page .pm-pp-poseur a:hover .pm-pp-poseur__img img{transform:none}
}

/* Tuile poseur élargie : la tête dépasse moins, pour ne toucher ni le lien du haut ni le titre de la carte au-dessus. */
@media (min-width:1120px){#pm-page :is(.pm-pp-reals--n1,.pm-pp-reals--n2) .pm-pp-poseur__img{height:104%}}
@media (min-width:760px) and (max-width:1119.98px){#pm-page .pm-pp-reals--n2 .pm-pp-poseur__img{height:104%}}

/* Quelques modèles du catalogue fournisseur (16 octobre 2026, thème 1.24.0) */
#pm-page .pm-pp-mods{list-style:none;margin:36px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
#pm-page .pm-pp-mods--large{grid-template-columns:repeat(3,minmax(0,1fr))}
#pm-page .pm-pp-mods--haut.pm-pp-mods--n3{grid-template-columns:repeat(3,minmax(0,1fr));max-width:880px}
#pm-page .pm-pp-mods--n2{grid-template-columns:repeat(2,minmax(0,1fr));max-width:600px}
#pm-page .pm-pp-mod{min-width:0;display:flex}
#pm-page .pm-pp-mod figure{flex:1;margin:0;display:flex;flex-direction:column;background:var(--blanc);border-radius:16px;overflow:hidden;box-shadow:0 1px 2px rgba(8,21,48,.06)}
#pm-page .pm-pp-mod__img{display:block;aspect-ratio:4/5;min-height:0;overflow:hidden;padding:28px 28px 0;background:linear-gradient(180deg,var(--blanc) 55%,var(--pierre-100) 100%)}
#pm-page .pm-pp-mod__img img{display:block;width:100%;height:100%;object-fit:contain;object-position:50% 100%;filter:drop-shadow(0 12px 14px rgba(8,21,48,.16))}
#pm-page .pm-pp-mods--large .pm-pp-mod__img{aspect-ratio:2/1;padding:28px 32px}
#pm-page .pm-pp-mods--large .pm-pp-mod__img img{object-position:50% 50%;filter:drop-shadow(0 8px 10px rgba(8,21,48,.14))}
#pm-page .pm-pp-mod figcaption{display:grid;gap:4px;margin:0;padding:16px 20px 20px;font-style:normal;text-align:left;border-top:1px solid var(--pierre-100)}
#pm-page .pm-pp-mod__nom{font:700 17px/1.3 var(--fd);color:var(--pic-900)}
#pm-page .pm-pp-mod__d{font-size:14px;line-height:1.45;color:var(--pierre-700)}
#pm-page .pm-pp-mods__pied{margin-top:24px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 32px}
#pm-page .pm-pp-mods__note{margin:0;display:flex;align-items:flex-start;gap:8px;max-width:640px;font-size:14px;line-height:1.5;color:var(--pierre-700)}
#pm-page .pm-pp-mods__note svg{flex:none;margin-top:2px}
@media (max-width:1119.98px){
#pm-page .pm-pp-mods{grid-template-columns:repeat(3,minmax(0,1fr))}
#pm-page .pm-pp-mods--large{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:759.98px){
#pm-page .pm-pp-mods,#pm-page .pm-pp-mods--large,#pm-page .pm-pp-mods--n2,#pm-page .pm-pp-mods--haut.pm-pp-mods--n3{margin:24px calc(var(--px) * -1) 0;padding:0 var(--px) 4px;max-width:none;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:44%;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:var(--px);scrollbar-width:none}
#pm-page .pm-pp-mods::-webkit-scrollbar{display:none}
#pm-page .pm-pp-mods--large{grid-auto-columns:80%}
#pm-page .pm-pp-mod{scroll-snap-align:start}
#pm-page .pm-pp-mod__img{padding:18px 18px 0}
#pm-page .pm-pp-mods--large .pm-pp-mod__img{padding:18px}
#pm-page .pm-pp-mod figcaption{padding:12px 14px 14px}
#pm-page .pm-pp-mod__nom{font-size:16px}
#pm-page .pm-pp-mod__d{font-size:13px}
}

/* Carte « Bien d'autres modèles au showroom », dernière du bloc Modèles (16 octobre 2026, thème 1.24.5) */
#pm-page .pm-pp-mod--plus a{flex:1;display:flex;flex-direction:column;align-items:flex-start;gap:16px;padding:24px;border-radius:16px;background:radial-gradient(120% 70% at 100% 0%,rgb(56 140 214 / .3),rgb(56 140 214 / 0) 60%),var(--pic-950);color:var(--blanc);text-decoration:none;transition:box-shadow 240ms var(--ease)}
#pm-page .pm-pp-mod--plus a:hover{box-shadow:0 16px 40px -16px rgba(8,21,48,.45);color:var(--blanc)}
#pm-page .pm-pp-mod--plus a:focus-visible{box-shadow:0 0 0 2px var(--pierre-50),0 0 0 5px var(--ciel-500)}
#pm-page .pm-pp-mod-plus__ic{display:grid;place-items:center;width:52px;height:52px;border-radius:999px;background:rgb(255 255 255 / .08);box-shadow:inset 0 0 0 1px rgb(255 255 255 / .2);color:var(--ciel-300)}
#pm-page .pm-pp-mod-plus__corps{display:grid;gap:8px;margin-top:auto}
#pm-page .pm-pp-mod-plus__t{font:700 22px/1.2 var(--fd);color:var(--blanc);text-wrap:balance}
#pm-page .pm-pp-mod-plus__d{font-size:14px;line-height:1.5;color:#C9D2E1}
#pm-page .pm-pp-mod--plus .pm-pp-btn--blanc{width:100%;margin-top:4px}
#pm-page .pm-pp-mod--plus a:hover .pm-pp-disque{transform:translateX(2px)}
#pm-page .pm-pp-mods__pied{justify-content:flex-start}
@media (max-width:759.98px){
#pm-page .pm-pp-mods--haut .pm-pp-mod--plus{grid-column:span 2}
#pm-page .pm-pp-mod--plus a{padding:18px}
#pm-page .pm-pp-mod-plus__t{font-size:19px}
}

/* Bloc Modèles : 4 modèles + carte showroom sur une ligne (1.24.6) */
@media (min-width:1120px){#pm-page .pm-pp-mods--haut.pm-pp-mods--n5{grid-template-columns:repeat(5,minmax(0,1fr))}}

/* pm-pp-autre-tablette (19 octobre 2026, audit final) : bloc « Une autre ouverture si… » ; entre 760 et ~880 px, la question et le lien (insécable) ne tenaient pas sur une ligne et la carte débordait de 2 à 6 px (iPad en portrait). Le lien passe sous la question quand la place manque. */
#pm-page .pm-pp-choix>div{grid-template-columns:minmax(0,1fr)}
#pm-page .pm-pp-autre{flex-wrap:wrap}

/* pm-rails-axe-x (20 octobre 2026, demande du client) : sur mobile, le carrousel des réalisations dépassait de 6 à 7 px en hauteur
   (photo du poseur à 106 %) et devenait défilable verticalement : sur iPhone, un glissement vertical commencé dessus
   faisait bouger le carrousel au lieu de la page. Les carrousels ne défilent plus qu'à l'horizontale (affichage inchangé :
   overflow-x auto rognait déjà), et un glissement en bout de carrousel ne déclenche plus le retour arrière du navigateur. */
@media (max-width:759.98px){
#pm-page .pm-pp-reals,#pm-page .pm-pp-mods{overflow-y:hidden;overscroll-behavior-x:contain}
}

/* Devis express complet sur place (26 octobre 2026, plan 2-plans/plan-devis-2-etapes.md) : code postal, nom, téléphone,
   remerciement et question facultative sur le type de chantier dans la carte. */
#pm-page .pm-pp-express__duo{display:grid;grid-template-columns:1fr 1fr;gap:10px}
#pm-page .pm-pp-express__champ{display:grid;gap:6px;align-content:start;min-width:0}
#pm-page .pm-pp-express__saisie{font-weight:400;letter-spacing:normal}
#pm-page .pm-pp-express__saisie[aria-invalid="true"]{border:2px solid var(--erreur-700)}
#pm-page .pm-pp-express__err{margin:0;font-size:13px;line-height:1.35;color:var(--erreur-700)}
#pm-page .pm-pp-express__alerte{margin:0;padding:10px 12px;border-radius:10px;background:var(--erreur-100);font-size:14px;line-height:1.4;color:var(--erreur-700)}
#pm-page .pm-pp-express [data-pm-pp-envoi][aria-busy="true"]{opacity:.7;cursor:progress}
#pm-page .pm-pp-express__merci{padding:22px 24px 24px;display:grid;gap:12px;outline:none}
#pm-page .pm-pp-express__merci-ok{width:48px;height:48px;border-radius:999px;background:var(--succes-700);color:var(--blanc);display:grid;place-items:center}
#pm-page .pm-pp-express__merci-txt{margin:0;font-size:15px;line-height:1.5;color:var(--pierre-700)}
#pm-page .pm-pp-express__facultatif{font-weight:400;color:var(--pierre-600)}
#pm-page .pm-pp-express__lien{justify-self:start;min-height:44px;display:inline-flex;align-items:center;font:700 15px var(--fd);color:var(--pic-800);text-decoration:underline;text-underline-offset:4px}
#pm-page .pm-pp-express__lien:hover{color:var(--pic-900)}
#pm-page .pm-pp-express__type button:disabled{cursor:default}
#pm-page .pm-pp-express__type button:disabled:not([aria-pressed="true"]){opacity:.55}
/* Carte plus courte : le bouton d'envoi reste dans le premier écran à 1 280 × 800 (le titre nomme déjà le projet). */
#pm-page .pm-pp-express__photo{aspect-ratio:16/6}
