/* GE2 Booking — styles du module (contrastes WCAG 2.2 AA, cibles ≥ 44 px). */
.ge2b{max-width:880px;color:#1d1b19;font-size:1rem;line-height:1.5}
.ge2b .ge2b-h{font-size:1.25rem;margin:24px 0 12px;color:#1d1b19}
.ge2b .ge2b-status{min-height:1.5em;margin:0 0 8px;color:#4a443d}
.ge2b .ge2b-days{display:flex;gap:10px;overflow-x:auto;padding:4px 2px 10px;scroll-snap-type:x mandatory}
.ge2b .ge2b-day{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:84px;min-height:64px;padding:8px 12px;border:1.5px solid #cfc6b8;border-radius:14px;background:#fffefa;color:#1d1b19;font:inherit;cursor:pointer;scroll-snap-align:start}
.ge2b .ge2b-day-w{font-size:.8125rem;text-transform:capitalize;color:#5f574e}
.ge2b .ge2b-day-n{font-weight:700}
.ge2b .ge2b-day[aria-pressed="true"],.ge2b .ge2b-slot[aria-pressed="true"]{background:#1d1b19;border-color:#1d1b19;color:#fffefa}
.ge2b .ge2b-day[aria-pressed="true"] .ge2b-day-w{color:#e9e2d6}
.ge2b .ge2b-slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:10px}
.ge2b .ge2b-slot{min-height:48px;border:1.5px solid #cfc6b8;border-radius:12px;background:#fffefa;color:#1d1b19;font:inherit;font-weight:700;cursor:pointer}
.ge2b button:focus-visible,.ge2b input:focus-visible,.ge2b select:focus-visible,.ge2b textarea:focus-visible,.ge2b a:focus-visible{outline:3px solid #a93d17;outline-offset:2px}
.ge2b .ge2b-more{margin-top:8px;min-height:44px;padding:0 16px;border:0;background:none;color:#a93d17;font:inherit;font-weight:700;text-decoration:underline;cursor:pointer}
.ge2b .ge2b-selected{margin:24px 0 0;padding:12px 16px;border-radius:12px;background:#efe8dc;font-weight:700}
.ge2b .ge2b-form{display:grid;grid-template-columns:1fr 1fr;gap:14px 18px}
.ge2b .ge2b-form .ge2b-h,.ge2b .ge2b-consent,.ge2b .ge2b-submit,.ge2b .ge2b-field:has(textarea){grid-column:1 / -1}
.ge2b .ge2b-field{display:flex;flex-direction:column;gap:6px}
.ge2b label{font-weight:600;color:#1d1b19}
.ge2b .ge2b-req{color:#a93d17}
.ge2b input[type="text"],.ge2b input[type="email"],.ge2b input[type="tel"],.ge2b select,.ge2b textarea{min-height:48px;padding:10px 12px;border:1.5px solid #9d9488;border-radius:10px;background:#fff;color:#1d1b19;font:inherit}
.ge2b [aria-invalid="true"]{border-color:#b3261e !important;box-shadow:0 0 0 2px rgba(179,38,30,.15)}
.ge2b .ge2b-consent{display:flex;flex-wrap:wrap;align-items:flex-start;gap:8px 10px}
.ge2b .ge2b-consent input{width:24px;height:24px;margin:0;flex:0 0 24px}
.ge2b .ge2b-consent label{flex:1 1 60%;font-weight:400}
.ge2b .ge2b-consent a{display:inline-block;min-height:24px;line-height:24px;color:#a93d17;font-weight:700}
.ge2b .ge2b-submit{justify-self:start;min-height:52px;padding:0 24px;border:0;border-radius:999px;background:#1d1b19;color:#fffefa;font:inherit;font-weight:700;cursor:pointer}
.ge2b .ge2b-submit[disabled]{opacity:.7;cursor:progress}
.ge2b .ge2b-hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.ge2b .ge2b-done{padding:28px;border-radius:18px;background:#fffefa;border:2px solid #1d1b19}
.ge2b .ge2b-done-when{font-size:1.25rem;font-weight:700}.ge2b .ge2b-done-when::first-letter{text-transform:uppercase}
@media (max-width:640px){.ge2b .ge2b-form{grid-template-columns:1fr}}
