/* Fenêtre « Réserver 20 minutes » (oct. 2026) — couleurs et polices de la charte */
.rdv20{position:fixed;inset:0;margin:auto;height:fit-content;max-height:calc(100dvh - 32px);overflow:auto;border:0;padding:0;border-radius:24px;max-width:min(520px,calc(100vw - 32px));width:100%;background:#F6F7F5;color:#16382C;box-shadow:0 40px 90px -30px rgba(10,30,22,.6)}
.rdv20::backdrop{background:rgba(10,30,22,.55);backdrop-filter:blur(3px)}
.rdv20-f{position:relative;display:grid;gap:12px;padding:34px clamp(20px,5vw,40px) 28px}
.rdv20 .eyebrow{font-family:'JetBrains Mono',ui-monospace,monospace;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:#86671F}
.rdv20 h2{font-family:'Instrument Serif',Georgia,serif;font-weight:400;font-size:clamp(1.9rem,5vw,2.4rem);line-height:1.05;margin:0;color:#16382C}
.rdv20 h2 em{color:#86671F}
.rdv20 p{margin:0;font-size:.95rem;line-height:1.55;color:#3E5A4F}
.rdv20 label{display:grid;gap:6px}
.rdv20 label span{font-family:'JetBrains Mono',ui-monospace,monospace;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:#4F6A5F}
.rdv20 input,.rdv20 textarea{font:inherit;font-size:1rem;color:#16382C;background:#fff;border:1px solid rgba(22,56,44,.22);border-radius:12px;padding:11px 14px;width:100%}
.rdv20 input:focus-visible,.rdv20 textarea:focus-visible{outline:2px solid #86671F;outline-offset:1px}
.rdv20 .btn{justify-self:start;margin-top:6px}
.rdv20-x{position:absolute;top:14px;right:14px;width:40px;height:40px;border-radius:50%;border:1px solid rgba(22,56,44,.2);background:transparent;color:#16382C;font-size:1.4rem;line-height:1;cursor:pointer}
.rdv20-x:focus-visible{outline:2px solid #86671F;outline-offset:2px}
.rdv20 .rdv20-rgpd{font-size:.82rem;color:#4F6A5F}
.rdv20 .rdv20-rgpd a{color:inherit}
.rdv20 .vp27-piege{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.rdv20-lien{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:18px;padding-top:18px;border-top:1px solid rgba(22,56,44,.15);font-size:.92rem}
body.dark .rdv20{background:#0F2B20;color:#F2E9D0}
body.dark .rdv20 h2{color:#F2E9D0}
body.dark .rdv20 h2 em,body.dark .rdv20 .eyebrow{color:#E9C979}
body.dark .rdv20 p,body.dark .rdv20 label span,body.dark .rdv20 .rdv20-rgpd{color:rgba(242,233,208,.8)}
body.dark .rdv20 input,body.dark .rdv20 textarea{background:#15382B;color:#F2E9D0;border-color:rgba(242,233,208,.25)}
body.dark .rdv20-x{color:#F2E9D0;border-color:rgba(242,233,208,.3)}
@media (prefers-reduced-motion:reduce){.rdv20::backdrop{backdrop-filter:none}}
