/* ============================================================================================
   PRISE DE RENDEZ-VOUS DE DEMO — styles du formulaire.
   Chargee par la PAGE /demo et par le POPUP de la vitrine : le meme formulaire s'affiche aux
   deux endroits, il n'existe donc qu'un seul jeu de styles.
   Tout est prefixe .dm- : ces pages chargent aussi landing.css, dont les selecteurs generiques
   baveraient sur un nom court.
   ============================================================================================ */

.dm-days,.dm-slots{display:flex;gap:8px;flex-wrap:wrap;}
.dm-slots{max-height:172px;overflow-y:auto;padding:2px;}
.dm-chip{cursor:pointer;border:1px solid var(--border);background:var(--surface-2);color:var(--ink);
  border-radius:var(--r);padding:9px 13px;font-family:inherit;font-size:13px;line-height:1.15;transition:.12s;}
.dm-chip:hover{border-color:var(--flag);}
.dm-chip.on{background:var(--flag);border-color:var(--flag);color:#fff;box-shadow:0 4px 12px rgba(255,90,31,.28);}
.dm-days .dm-chip{display:flex;flex-direction:column;align-items:center;gap:1px;min-width:66px;}
.dm-days .dm-chip b{font-size:13px;font-weight:700;text-transform:capitalize;}
.dm-days .dm-chip span{font-size:11px;opacity:.85;}
.dm-slot{min-width:64px;text-align:center;}
.dm-none{color:var(--muted);font-size:13px;margin:0;}
.dm-hp{display:none!important;}

.dm-step{font-family:var(--font-display);font-size:12px;letter-spacing:.12em;text-transform:uppercase;
  color:var(--muted);margin:0 0 12px;}
.dm-step + .dm-days,.dm-step + .dm-slots{margin-bottom:2px;}
.dm-step-2{margin-top:22px;}
.dm-step .dm-step-note{text-transform:none;letter-spacing:0;}
.dm-sep{border:none;border-top:1px solid var(--border);margin:22px 0;}
.dm-msg{font-size:14px;margin:10px 0 0;min-height:20px;}
.dm-cap:empty{display:none;}
.dm-cap{margin:6px 0 4px;}

/* Confirmation : elle REMPLACE le formulaire, elle ne s'ajoute pas dessous. */
.dm-ok{text-align:center;padding:8px 0 4px;}
.dm-ok .rond{width:56px;height:56px;border-radius:50%;background:var(--soft);color:var(--flag);
  display:flex;align-items:center;justify-content:center;margin:0 auto 16px;}
.dm-ok h2{font-size:24px;margin:0 0 10px;}
.dm-ok .quand{font-size:17px;font-weight:700;color:var(--ink);margin:0 0 18px;}
.dm-ok .intro{color:var(--muted);font-size:14px;margin:0 0 14px;}
.dm-lien{display:block;word-break:break-all;font-size:13px;background:var(--surface-2);
  border:1px solid var(--border);border-radius:var(--r);padding:12px 14px;margin:0 0 18px;color:var(--ink);}
.dm-ok-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;}
.dm-note{font-size:13px;color:var(--muted);margin:18px 0 0;}

/* ---- Mise en page de la PAGE /demo (le popup, lui, garde le cadre .demo-card) -------------- */
.dm-page{max-width:900px;margin:0 auto;padding:42px 24px 72px;}
.dm-top{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:40px;}
.dm-grid{display:grid;grid-template-columns:1fr;gap:38px;}
@media(min-width:860px){.dm-grid{grid-template-columns:.9fr 1.1fr;gap:56px;align-items:start;}}
.dm-lead h1{font-size:clamp(30px,4vw,42px);margin:0 0 14px;color:var(--ink);}
.dm-lead p{font-size:16px;color:var(--muted);margin:0 0 18px;line-height:1.6;}
.dm-points{list-style:none;margin:22px 0 0;padding:0;}
.dm-points li{display:flex;gap:10px;align-items:flex-start;font-size:15px;margin-bottom:12px;color:var(--text);}
.dm-points svg{flex-shrink:0;color:var(--flag);margin-top:2px;}
.dm-card{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);
  padding:26px 24px;box-shadow:var(--shadow);}
