/* Formulaire « Accéder à la démo » (#53) — composant partagé vitrine + visite.
   Mêmes valeurs que la charte de la vitrine (indigo #4F46E5, neutres froids). Les boutons
   prennent la classe de l'hôte (vitrine .btn, visite .btn-cta) : même geste partout. */
.ac{--ac-accent:#4F46E5;--ac-accent-f:#4338CA;--ac-doux:#EEEDFD;--ac-encre:#0B1020;--ac-encre-2:#4A5266;--ac-encre-3:#5B6376;
  --ac-ligne:#D6D9E4;--ac-erreur:#B42318;color:var(--ac-encre);font-size:15px;line-height:1.5}
.ac[hidden],.ac [hidden]{display:none!important}
.ac-form{display:block;margin:0}
.ac-lab{display:block;margin:0 0 7px;font-size:14.5px;font-weight:600;color:var(--ac-encre);letter-spacing:-.005em}
.ac-ligne{display:flex;gap:8px;align-items:stretch}
.ac input[type=email],.ac input[type=text],.ac select{width:100%;min-width:0;height:50px;margin:0;padding:0 14px;border:1px solid var(--ac-ligne);border-radius:10px;
  background:#fff;color:var(--ac-encre);font-family:inherit;font-size:16px;font-weight:400;line-height:1.2;caret-color:var(--ac-accent);
  transition:border-color .15s,box-shadow .15s;-webkit-appearance:none;appearance:none}
.ac-ligne input{flex:1}
.ac input::placeholder{color:#6B7285}
.ac input:hover,.ac select:hover{border-color:#9AA1B2}
.ac input:focus,.ac select:focus{outline:none;border-color:var(--ac-accent);box-shadow:0 0 0 3px rgb(79 70 229 / .2)}
.ac [aria-invalid="true"]{border-color:var(--ac-erreur)!important}
.ac [aria-invalid="true"]:focus{box-shadow:0 0 0 3px rgb(180 35 24 / .16)}
.ac-ligne .ac-btn1{flex:none;min-height:50px;height:auto}
.ac-btn2{margin-top:20px;min-height:50px}
.ac button[aria-busy="true"]{opacity:.72;cursor:progress}
.ac-aide{margin:8px 0 0;font-size:13.5px;line-height:1.5;color:var(--ac-encre-3);text-wrap:pretty}
.ac-err{margin:8px 0 0;font-size:14px;line-height:1.45;color:var(--ac-erreur);font-weight:500;text-wrap:pretty}
.ac-err:empty{display:none}
.ac-err--gen{margin-top:12px}

/* Étape 2 : l'email reste visible en rappel, les deux champs s'ouvrent en place */
.ac-rappel{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 18px;padding:10px 12px 10px 12px;border-radius:10px;background:var(--ac-doux);font-size:15px}
.ac-rappel .ac-ic{width:18px;height:18px;flex:none;color:var(--ac-accent);stroke-width:2.2}
.ac-rappel__e{min-width:0;font-weight:600;overflow-wrap:anywhere}
.ac-rappel .ac-lien{margin-left:auto}
.ac-champ + .ac-champ{margin-top:16px}
.ac-select{position:relative}
.ac-select select{padding-right:42px;cursor:pointer}
.ac-select .ac-ic{position:absolute;right:14px;top:50%;width:18px;height:18px;margin-top:-9px;color:var(--ac-encre-3);pointer-events:none}
.ac-piege{position:absolute!important;left:-10000px;width:1px;height:1px;overflow:hidden}
.ac-entre{animation:ac-entre .32s cubic-bezier(.16,1,.3,1)}
@keyframes ac-entre{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.ac-rgpd{margin:16px 0 0;padding-top:14px;border-top:1px solid #E6E8F0;font-size:12.5px;line-height:1.55;color:var(--ac-encre-3);text-wrap:pretty}
.ac-rgpd a{color:var(--ac-encre-2);text-underline-offset:3px}

.ac-ic{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.ac-lien{display:inline;min-height:0;padding:0;border:0;background:none;color:var(--ac-accent-f);font:inherit;font-weight:600;
  text-decoration:underline;text-decoration-color:rgb(79 70 229 / .35);text-underline-offset:3px;text-decoration-thickness:1.5px;cursor:pointer}
.ac-lien:hover{text-decoration-color:currentColor}
.ac-lien[aria-disabled="true"]{color:var(--ac-encre-3);text-decoration:none;cursor:default;font-weight:500;font-variant-numeric:tabular-nums}
/* cibles tactiles : la zone cliquable déborde du texte sans le décaler */
/* cibles tactiles : interligne généreux plutôt qu'une zone absolue (le lien peut se couper sur deux lignes) */
.ac-ok .ac-aide{line-height:1.75}
.ac-lien{padding:6px 0;margin:-6px 0}

/* Message après l'envoi (à la place du formulaire) */
.ac-ok{display:grid;grid-template-columns:44px minmax(0,1fr);gap:16px;align-items:start;animation:ac-entre .35s cubic-bezier(.16,1,.3,1)}
.ac-ok__ic{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:var(--ac-doux);color:var(--ac-accent)}
.ac-ok__ic .ac-ic{width:22px;height:22px}
.ac-ok__t{margin:0 0 6px;font-family:Poppins,Inter,system-ui,sans-serif;font-size:20px;line-height:1.25;font-weight:600;letter-spacing:-.015em;outline:none}
.ac-ok__txt > p{margin:0;color:var(--ac-encre-2);text-wrap:pretty}
.ac-ok__txt > p + p{margin-top:10px}
.ac-ok__e{color:var(--ac-encre);font-weight:600;overflow-wrap:anywhere}

@media (max-width:639px){
  .ac-ligne{flex-direction:column}
  .ac-ligne input{flex:none}
  .ac-ligne .ac-btn1,.ac-btn2{width:100%}
  .ac-ok{grid-template-columns:1fr;gap:12px}
}
@media (prefers-reduced-motion:reduce){.ac-entre,.ac-ok{animation:none}}
