.booking-eyebrow{color:var(--primary);font-size:.88rem;font-weight:700;letter-spacing:.08em;margin:0 0 8px;text-transform:uppercase}.booking-warning{background:var(--warning-bg);border:2px solid var(--warning-line);border-radius:18px;box-shadow:0 14px 30px rgba(74,107,138,.11);color:#1e3a4a;display:grid;font-size:clamp(.94rem,1.35vw,1.02rem);gap:6px;line-height:1.48;margin:16px auto 0;max-width:780px;padding:15px 18px;text-align:left}.booking-equipe{margin:14px auto 0;max-width:780px}.booking-warning strong{color:#163949;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}.booking-section{padding:28px 24px 44px}.booking-inner{margin:0 auto;max-width:1080px}.practitioners-grid{display:grid;gap:22px}.practitioner-card{background:#fff;border:1px solid #e2e8f0;border-radius:22px;scroll-margin-top:96px;box-shadow:0 16px 38px rgba(74,107,138,.08);display:grid;gap:20px;grid-template-columns:190px 1fr;padding:20px}.practitioner-photo{border-radius:18px;height:230px;object-fit:cover;object-position:center center;width:100%}.photo-hermine{object-position:center 38%}.practitioner-content{display:flex;flex-direction:column;min-width:0}.practitioner-content h2{color:#1e293b;font-size:clamp(1.25rem,2.4vw,1.55rem);font-weight:700;letter-spacing:-.02em;margin:0 0 10px}.practitioner-badges{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin:0 0 12px}.audience,.notice{align-items:center;align-self:flex-start;border-radius:999px;display:inline-flex;font-size:.9rem;font-weight:700;margin:0;padding:6px 11px}.audience{background:#eef7f9;border:1px solid #d7ecef;color:var(--primary-deep)}.audience-secondary{background:#f7fbf5;border-color:#cfe5d4;color:#4f7358}.notice{background:#fff7e6;border:1px solid #f2d7a6;color:#8a5c1f;margin:-4px 0 18px}.description{color:#475569;font-size:.95rem;line-height:1.55;margin:0 0 12px}.bio{color:#64748b;font-size:.96rem;line-height:1.58;margin:0 0 14px}.calendar-button{align-self:flex-start;margin-top:auto;max-width:100%;white-space:normal}.copy-help{color:#64748b;font-size:.9rem;margin:8px 0 0}.booking-contact-card{align-items:center;background:#f2f8fb;border:1px solid #d7ecef;border-radius:20px;display:flex;gap:20px;justify-content:space-between;margin-top:24px;padding:20px}.booking-contact-card h2{color:#1e293b;font-size:1.08rem;font-weight:700;margin:0 0 8px}.booking-contact-card p{color:#64748b;font-size:.95rem;line-height:1.55;margin:0 0 8px}@media (max-width:620px){.practitioner-card{grid-template-columns:1fr}.booking-contact-card{align-items:flex-start;flex-direction:column}}.booking-widget-overlay{align-items:center;background:rgba(15,42,56,.55);display:flex;inset:0;justify-content:center;padding:24px 16px;position:fixed;z-index:120}.booking-widget{background:#fff;border-radius:22px;box-shadow:0 30px 70px rgba(15,42,56,.28);display:flex;flex-direction:column;max-height:calc(100vh - 48px);max-width:760px;width:100%}.booking-widget-header{align-items:flex-start;border-bottom:1px solid #e2e8f0;display:flex;gap:16px;justify-content:space-between;padding:20px 24px}.booking-widget-eyebrow{color:var(--primary);font-size:.82rem;font-weight:700;letter-spacing:.08em;margin:0 0 4px;text-transform:uppercase}.booking-widget-header h2{color:#1e293b;font-size:1.3rem;font-weight:700;margin:0}.booking-widget-close{background:none;border:none;color:#64748b;cursor:pointer;font-size:1.7rem;line-height:1;padding:0 4px}.booking-widget-close:hover{color:#1e293b}.booking-widget-body{display:grid;gap:20px;flex:1;min-height:0;overflow-y:auto;padding:22px 24px 26px}.booking-widget-footer{background:#fff;border-radius:0 0 22px 22px;border-top:1px solid #e2e8f0;display:grid;gap:12px;padding:14px 24px 18px}.booking-widget-actions{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.booking-widget-actions .primary-button{margin-left:auto}.booking-back{background:none;border:none;color:#64748b;cursor:pointer;font-family:inherit;font-size:.9rem;font-weight:600;padding:8px 4px}.booking-back:hover{color:#1e293b}.booking-count{color:#475569;font-size:.9rem;font-weight:600}.booking-steps{border-bottom:1px solid #f1f5f9;color:#94a3b8;display:flex;flex-wrap:wrap;font-size:.86rem;font-weight:600;gap:8px;list-style:none;margin:0;padding:14px 24px}.booking-steps li:after{color:#cbd5e1;content:"›";margin-left:8px}.booking-steps li:last-child:after{content:""}.booking-steps .current{color:var(--primary-deep)}.booking-steps .done{color:#4f7358}.booking-service-choice{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.booking-service-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;cursor:pointer;display:grid;gap:6px;padding:14px 16px;text-align:left}.booking-service-card strong{color:#1e293b;font-size:1rem}.booking-service-card span{color:#64748b;font-size:.88rem;line-height:1.45}.booking-service-card:hover{border-color:var(--primary)}.booking-service-card.selected{background:#eef7f9;border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}.booking-slots h3{align-items:baseline;color:#1e293b;display:flex;flex-wrap:wrap;font-size:1.02rem;gap:10px;margin:0 0 12px}.booking-duration{color:#64748b;font-size:.86rem;font-weight:500}.booking-days{display:grid;gap:14px}.booking-day-label{color:#475569;font-size:.9rem;font-weight:600;margin:0 0 6px}.booking-hours{display:flex;flex-wrap:wrap;gap:8px}.booking-hour{background:#fff;border:1px solid #cbd5e1;border-radius:999px;color:#1e293b;cursor:pointer;font-size:.9rem;font-weight:600;padding:7px 14px}.booking-hour.selected,.booking-hour:hover{border-color:var(--primary)}.booking-hour.selected{background:var(--primary);color:#fff}.booking-selected-recap{background:#f2f8fb;border:1px solid #d7ecef;border-radius:14px;color:#1e3a4a;font-size:.9rem;line-height:1.5;margin:0 0 14px;padding:10px 14px}.booking-form{margin:0}.booking-form-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.booking-form label,.booking-form-message{color:#475569;display:grid;font-size:.88rem;font-weight:600;gap:5px}.booking-form-message{margin-top:12px}.booking-form input,.booking-form select,.booking-form textarea{background:#fff;border:1px solid #cbd5e1;border-radius:12px;color:#1e293b;font-family:inherit;font-size:.95rem;font-weight:400;padding:9px 12px;width:100%}.booking-form input:focus,.booking-form select:focus,.booking-form textarea:focus{border-color:var(--primary);outline:none}.booking-widget-help{color:#64748b;font-size:.9rem;line-height:1.55;margin:0}.booking-widget-error{background:#fef2f2;border:1px solid #fecaca;border-radius:12px;color:#b91c1c;font-size:.9rem;margin:0;padding:10px 14px}.booking-confirmation-title{color:#4f7358;font-size:1.15rem;font-weight:700;margin:0}.booking-confirmation ul{color:#1e293b;display:grid;gap:6px;line-height:1.5;margin:0;padding-left:20px}.booking-confirmation .primary-button{justify-self:flex-start}@media (max-width:620px){.booking-widget-overlay{padding:0}.booking-widget{border-radius:0;height:100%;max-height:100%}.booking-widget-footer{border-radius:0}}