.bookingPageIntro{padding:5.5rem 0 4rem;background:linear-gradient(180deg,#ffffff 0%,#f5f6fb 100%)}.bookingPageIntroInner{max-width:760px;text-align:center}.bookingPageIntro .sectionSubtitle{margin-bottom:1.25rem}.bookingPageLead{max-width:640px;margin:0 auto;color:var(--color-text-muted);font-size:1.05rem;line-height:1.75}.bookingPagePreviewNotice{max-width:720px;margin:2rem auto 0;padding:.85rem 1.1rem;border:1px solid rgba(79,70,229,.25);border-radius:var(--radius-sm);background-color:#4f46e514;color:var(--color-primary);font-size:.95rem;line-height:1.5;text-align:center}.bookingPageContent{padding:5rem 0;background-color:var(--color-bg)}.bookingPageStepper{display:flex;flex-direction:column;gap:1.5rem;max-width:760px;margin:0 auto}.bookingPageStep{padding:1.75rem;background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.bookingPageStepHeader{display:flex;align-items:center;gap:.85rem;margin-bottom:1rem}.bookingPageStepNumber{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:999px;background-color:var(--color-primary);color:var(--color-primary-text);font-size:.9rem;font-weight:700;flex-shrink:0}.bookingPageStepTitle{margin:0;font-size:1.15rem}.bookingPageStepBody{display:flex;flex-direction:column;gap:1rem}.bookingPageFormField{display:flex;flex-direction:column;gap:.4rem}.bookingPageFormLabel{font-size:.9rem;font-weight:600;color:var(--color-text)}.bookingPageFormHint{margin:0;font-size:.85rem;color:var(--color-text-muted)}.bookingPageFormInput,.bookingPageFormSelect,.bookingPageFormTextarea{width:100%;padding:.65rem .85rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background-color:var(--color-bg);color:var(--color-text);font-family:inherit;font-size:1rem;line-height:1.5;transition:border-color .15s ease,box-shadow .15s ease}.bookingPageFormInput:focus,.bookingPageFormSelect:focus,.bookingPageFormTextarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #4f46e52e}.bookingPageFormTextarea{resize:vertical;min-height:100px}.bookingPageTimeSlots{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:.6rem;list-style:none;padding:0;margin:0}.bookingPageTimeSlot{display:flex;align-items:center;justify-content:center;min-height:42px;padding:.55rem .75rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background-color:var(--color-bg);color:var(--color-text);font-size:.92rem;font-weight:600;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease,transform .05s ease}.bookingPageTimeSlot:hover{border-color:var(--color-primary);color:var(--color-primary)}.bookingPageTimeSlot:active{transform:translateY(1px)}.bookingPageTimeSlotActive{background-color:var(--color-primary);border-color:var(--color-primary);color:var(--color-primary-text)}.bookingPageTimeSlotActive:hover{background-color:var(--color-primary-hover);border-color:var(--color-primary-hover);color:var(--color-primary-text)}.bookingPageSummary{margin:0;padding:1rem 1.1rem;background-color:var(--color-bg);border:1px dashed var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);font-size:.95rem;line-height:1.6}.bookingPageSummary strong{color:var(--color-text)}.bookingPageSubmitRow{display:flex;justify-content:flex-end;padding-top:.5rem}.bookingPageSubmit{min-width:180px}.bookingPageSuccess{margin:0 auto;max-width:560px;padding:2rem;background-color:var(--color-surface);border:1px solid rgba(79,70,229,.2);border-radius:var(--radius-md);text-align:center}.bookingPageSuccessTitle{margin:0 0 .5rem;font-size:1.3rem;color:var(--color-primary)}.bookingPageSuccessText{margin:0;color:var(--color-text-muted);font-size:1rem;line-height:1.65}@media (max-width: 640px){.bookingPageIntro{padding:4rem 0 3rem}.bookingPageContent{padding:3.5rem 0 6rem}.bookingPageStep{padding:1.25rem}.bookingPageSubmitRow{justify-content:stretch}.bookingPageSubmit{width:100%}}.bookingPageUnavailableNotice{margin-top:1rem;padding:1rem;background-color:#fef2f2;border:1px solid #ef4444;border-radius:var(--radius-sm);color:#991b1b;font-weight:500;text-align:center}
