.AppointmentBooking_bookingCard__rfCT7,.AppointmentBooking_success__fTyp8{--booking-ink:#15364a;--booking-teal:#07877f;--booking-mint:#e7f5f2;--booking-coral:#f4785b;overflow:hidden;border:1px solid #07877f33;border-radius:28px;background:#fffffff7;box-shadow:0 30px 80px #15364a21}.AppointmentBooking_bookingHeader__XSSYd{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:30px 34px 26px;border-bottom:1px solid #07877f21}.AppointmentBooking_eyebrow__m7sZN{margin:0 0 8px;color:var(--booking-teal);font-size:.68rem;font-weight:850;letter-spacing:.14em;text-transform:uppercase}.AppointmentBooking_bookingHeader__XSSYd h2,.AppointmentBooking_success__fTyp8 h2{margin:0;color:var(--booking-ink);font-family:var(--font-serif),Georgia,serif;font-size:clamp(1.75rem,3vw,2.35rem);font-weight:600;line-height:1.08;letter-spacing:-.035em}.AppointmentBooking_secureLabel__S3uS5{display:inline-flex;align-items:center;gap:7px;flex:0 0 auto;padding:9px 12px;border-radius:999px;background:var(--booking-mint);color:var(--booking-teal);font-size:.65rem;font-weight:800}.AppointmentBooking_secureLabel__S3uS5 svg{width:15px;height:15px}.AppointmentBooking_progress__Xc2Vx{position:relative;display:grid;grid-template-columns:repeat(3,1fr);margin:0;padding:23px 34px;background:#fbfdfc;list-style:none}.AppointmentBooking_progress__Xc2Vx:before{content:"";position:absolute;top:39px;right:calc(16.66% + 17px);left:calc(16.66% + 17px);height:1px;background:#cfdfdc}.AppointmentBooking_progress__Xc2Vx li{position:relative;z-index:1;display:grid;justify-items:center;gap:7px;color:#81949b}.AppointmentBooking_progress__Xc2Vx li>span{display:grid;place-items:center;width:33px;height:33px;border:1px solid #c9dcda;border-radius:50%;background:#fff;font-size:.68rem;font-weight:800}.AppointmentBooking_progress__Xc2Vx li>span svg{width:14px;height:14px}.AppointmentBooking_progress__Xc2Vx small{font-size:.62rem;font-weight:750}.AppointmentBooking_progress__Xc2Vx .AppointmentBooking_completedStep__X61qG,.AppointmentBooking_progress__Xc2Vx .AppointmentBooking_currentStep__4BzxS{color:var(--booking-teal)}.AppointmentBooking_progress__Xc2Vx .AppointmentBooking_currentStep__4BzxS>span{border-color:var(--booking-teal);background:var(--booking-teal);color:#fff;box-shadow:0 0 0 5px #07877f17}.AppointmentBooking_progress__Xc2Vx .AppointmentBooking_completedStep__X61qG>span{border-color:#07877f59;background:var(--booking-mint)}.AppointmentBooking_panel___7j6k{padding:30px 34px 34px}.AppointmentBooking_panelHeading__kfW0l{display:flex;gap:14px;align-items:flex-start;margin-bottom:24px}.AppointmentBooking_panelHeading__kfW0l>span{display:grid;place-items:center;flex:0 0 auto;width:34px;height:34px;border-radius:10px;background:var(--booking-ink);color:#fff;font-size:.67rem;font-weight:850}.AppointmentBooking_panelHeading__kfW0l h3{margin:0;color:var(--booking-ink);font-family:var(--font-serif),Georgia,serif;font-size:1.22rem;font-weight:600}.AppointmentBooking_panelHeading__kfW0l p{margin:5px 0 0;color:#70868f;font-size:.7rem;line-height:1.5}.AppointmentBooking_consultationGrid__4lrKD{display:grid;gap:12px}.AppointmentBooking_consultationOption___D2I6{display:grid;grid-template-columns:48px minmax(0,1fr) 28px;gap:14px;align-items:center;width:100%;padding:15px;border:1px solid #d4e4e1;border-radius:16px;background:#fff;color:var(--booking-ink);text-align:left;cursor:pointer;transition:border-color .18s ease,background .18s ease,transform .18s ease,box-shadow .18s ease}.AppointmentBooking_consultationOption___D2I6:hover{border-color:#07877f80;box-shadow:0 10px 28px #15364a12;transform:translateY(-2px)}.AppointmentBooking_selectedOption__LJdIR{border-color:var(--booking-teal);background:linear-gradient(120deg,#f5fbfa,#fff);box-shadow:inset 4px 0 0 var(--booking-teal)}.AppointmentBooking_optionIcon__1iYxa{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:var(--booking-mint);color:var(--booking-teal)}.AppointmentBooking_optionIcon__1iYxa svg{width:22px;height:22px}.AppointmentBooking_consultationOption___D2I6 small,.AppointmentBooking_consultationOption___D2I6 strong{display:block}.AppointmentBooking_consultationOption___D2I6 strong{font-size:.77rem}.AppointmentBooking_consultationOption___D2I6 small{margin-top:4px;color:#738891;font-size:.64rem;line-height:1.45}.AppointmentBooking_choiceMark__fUCBz{display:grid;place-items:center;width:25px;height:25px;border:1px solid #cddfdd;border-radius:50%;color:#fff}.AppointmentBooking_selectedOption__LJdIR .AppointmentBooking_choiceMark__fUCBz{border-color:var(--booking-teal);background:var(--booking-teal)}.AppointmentBooking_choiceMark__fUCBz svg{width:13px;height:13px}.AppointmentBooking_optionHint__o8z7X{margin:17px 0 0;color:#698088;font-size:.62rem;line-height:1.5;text-align:center}.AppointmentBooking_dateFieldset__NMiV0,.AppointmentBooking_timeFieldset__wMYe_{min-width:0;margin:0;padding:0;border:0}.AppointmentBooking_dateFieldset__NMiV0 legend,.AppointmentBooking_timeFieldset__wMYe_ legend{margin-bottom:12px;color:var(--booking-ink);font-size:.7rem;font-weight:850}.AppointmentBooking_timeFieldset__wMYe_{margin-top:27px}.AppointmentBooking_dateGrid__jbjAQ{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.AppointmentBooking_dateOption__h4Fw0{min-width:0;padding:11px 8px 12px;border:1px solid #d2e3e0;border-radius:14px;background:#fff;color:var(--booking-ink);cursor:pointer;transition:.17s ease}.AppointmentBooking_dateOption__h4Fw0:hover{border-color:#07877f80;transform:translateY(-2px)}.AppointmentBooking_dateOption__h4Fw0 small,.AppointmentBooking_dateOption__h4Fw0 span,.AppointmentBooking_dateOption__h4Fw0 strong{display:block;text-transform:capitalize}.AppointmentBooking_dateOption__h4Fw0 small{overflow:hidden;color:#7c9199;font-size:.58rem;text-overflow:ellipsis;white-space:nowrap}.AppointmentBooking_dateOption__h4Fw0 strong{margin:4px 0 2px;font-family:var(--font-serif),Georgia,serif;font-size:1.42rem;font-weight:600}.AppointmentBooking_dateOption__h4Fw0 span{font-size:.61rem}.AppointmentBooking_selectedDate__heC7n{border-color:var(--booking-teal);background:var(--booking-teal);color:#fff;box-shadow:0 10px 24px #07877f33}.AppointmentBooking_selectedDate__heC7n small{color:#fffc}.AppointmentBooking_slotLegend__LT0Fx{display:flex;gap:16px;margin:-27px 0 13px auto;width:max-content;color:#789099;font-size:.56rem}.AppointmentBooking_slotLegend__LT0Fx span{display:inline-flex;align-items:center;gap:6px}.AppointmentBooking_slotLegend__LT0Fx i{width:7px;height:7px;border-radius:50%}.AppointmentBooking_availableDot__7QdrY{background:var(--booking-teal)}.AppointmentBooking_unavailableDot__NLxWi{background:#c9d2d3}.AppointmentBooking_timeGrid__px3hm{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.AppointmentBooking_timeGrid__px3hm button{display:grid;grid-template-columns:16px 1fr;align-items:center;min-height:66px;padding:10px 9px;border:1px solid #cfe1df;border-radius:13px;background:#fff;color:var(--booking-ink);cursor:pointer;transition:border-color .17s ease,background .17s ease,color .17s ease,transform .17s ease,box-shadow .17s ease}.AppointmentBooking_timeGrid__px3hm button:hover:not(:disabled){border-color:var(--booking-teal);transform:translateY(-2px);box-shadow:0 9px 22px #15364a14}.AppointmentBooking_timeGrid__px3hm button>svg{grid-row:1/3;width:14px;height:14px;color:var(--booking-teal)}.AppointmentBooking_timeGrid__px3hm button strong{font-size:.72rem}.AppointmentBooking_timeGrid__px3hm button small{color:#7b9098;font-size:.5rem}.AppointmentBooking_timeGrid__px3hm button:disabled{border-color:#e1e7e6;background:#f2f4f3;color:#a4afb2;cursor:not-allowed}.AppointmentBooking_timeGrid__px3hm button:disabled small,.AppointmentBooking_timeGrid__px3hm button:disabled svg{color:#aeb8ba}.AppointmentBooking_timeGrid__px3hm .AppointmentBooking_selectedTime__4jRD2{border-color:var(--booking-ink);background:var(--booking-ink);color:#fff;box-shadow:0 10px 24px #15364a33}.AppointmentBooking_timeGrid__px3hm .AppointmentBooking_selectedTime__4jRD2 svg{color:#72d4ca}.AppointmentBooking_timeGrid__px3hm .AppointmentBooking_selectedTime__4jRD2 small{color:#bfe3df}.AppointmentBooking_loadingSlots__YYE5E{display:flex;align-items:center;justify-content:center;gap:10px;min-height:216px;border:1px dashed #cfe1df;border-radius:16px;color:#698088;font-size:.7rem}.AppointmentBooking_loadingSlots__YYE5E svg{width:18px;height:18px;animation:AppointmentBooking_spin__TFO2D .8s linear infinite}.AppointmentBooking_choosePrompt__St3kM{display:flex;align-items:center;justify-content:center;gap:8px;margin:16px 0 0;padding:12px 14px;border:1px dashed #b9d9d5;border-radius:13px;background:#f5fbfa;color:var(--booking-teal);font-size:.64rem;font-weight:750}.AppointmentBooking_choosePrompt__St3kM svg{width:16px;height:16px}.AppointmentBooking_slotConfirmation__iJ43F{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:16px;padding:13px 14px 13px 16px;border:1px solid #07877f47;border-radius:15px;background:linear-gradient(120deg,#eaf8f5,#f8fcfb);box-shadow:0 10px 25px #15364a14}.AppointmentBooking_slotConfirmation__iJ43F>span{display:grid;grid-template-columns:22px 1fr;column-gap:8px;align-items:center;min-width:0}.AppointmentBooking_slotConfirmation__iJ43F>span svg{grid-row:1/3;width:20px;height:20px;color:var(--booking-teal)}.AppointmentBooking_slotConfirmation__iJ43F small{color:#638087;font-size:.55rem;font-weight:750;text-transform:uppercase;letter-spacing:.08em}.AppointmentBooking_slotConfirmation__iJ43F strong{overflow:hidden;color:var(--booking-ink);font-size:.68rem;text-overflow:ellipsis;white-space:nowrap}.AppointmentBooking_slotConfirmation__iJ43F button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:42px;padding:0 17px;border:0;border-radius:999px;background:var(--booking-coral);color:#fff;font:inherit;font-size:.64rem;font-weight:850;cursor:pointer;box-shadow:0 9px 20px #f4785b38}.AppointmentBooking_slotConfirmation__iJ43F button svg{width:15px;height:15px}.AppointmentBooking_cutoffNotice__kLYWF{display:flex;align-items:center;gap:8px;margin:15px 0 0;color:#72868e;font-size:.61rem;line-height:1.45}.AppointmentBooking_cutoffNotice__kLYWF svg{flex:0 0 auto;width:15px;height:15px;color:var(--booking-teal)}.AppointmentBooking_summary__cMZa4{display:grid;grid-template-columns:.8fr 1.2fr;gap:12px;margin-bottom:24px;padding:16px;border-radius:16px;background:#eff8f6}.AppointmentBooking_summary__cMZa4 div{min-width:0}.AppointmentBooking_summary__cMZa4 small,.AppointmentBooking_summary__cMZa4 strong{display:block}.AppointmentBooking_summary__cMZa4 small{margin-bottom:5px;color:#72878f;font-size:.56rem;text-transform:uppercase;letter-spacing:.08em}.AppointmentBooking_summary__cMZa4 strong{color:var(--booking-ink);font-size:.69rem;line-height:1.45}.AppointmentBooking_formGrid__i6UVM{display:grid;grid-template-columns:1fr 1fr;gap:16px}.AppointmentBooking_formGrid__i6UVM label>span{display:block;margin-bottom:7px;color:var(--booking-ink);font-size:.66rem;font-weight:800}.AppointmentBooking_formGrid__i6UVM label>span small{color:#899ba1;font-weight:500}.AppointmentBooking_formGrid__i6UVM input{box-sizing:border-box;width:100%;min-height:48px;padding:0 14px;border:1px solid #cfdfdc;border-radius:12px;background:#fff;color:var(--booking-ink);font:inherit;font-size:.72rem;outline:none;transition:border-color .16s ease,box-shadow .16s ease}.AppointmentBooking_formGrid__i6UVM input:focus{border-color:var(--booking-teal);box-shadow:0 0 0 4px #07877f1a}.AppointmentBooking_fullField__M6L2d{grid-column:1/-1}.AppointmentBooking_consentRow__qjcGU{display:flex;align-items:flex-start;gap:10px;margin-top:18px;color:#637b84;font-size:.62rem;line-height:1.5}.AppointmentBooking_consentRow__qjcGU input{width:17px;height:17px;accent-color:var(--booking-teal)}.AppointmentBooking_actions__gz45d{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:25px}.AppointmentBooking_backButton__lL2_r,.AppointmentBooking_primaryButton__kufBQ,.AppointmentBooking_secondaryButton__nCy6u{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:49px;border-radius:999px;font:inherit;font-size:.68rem;font-weight:850;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.AppointmentBooking_primaryButton__kufBQ{margin:24px 0 0 auto;padding:0 21px;border:0;background:var(--booking-coral);color:#fff;box-shadow:0 11px 25px #f4785b38}.AppointmentBooking_actions__gz45d .AppointmentBooking_primaryButton__kufBQ{margin-top:0}.AppointmentBooking_primaryButton__kufBQ:hover:not(:disabled){box-shadow:0 15px 31px #f4785b4d;transform:translateY(-2px)}.AppointmentBooking_primaryButton__kufBQ:disabled{opacity:.42;cursor:not-allowed;box-shadow:none}.AppointmentBooking_backButton__lL2_r svg,.AppointmentBooking_primaryButton__kufBQ svg{width:16px;height:16px}.AppointmentBooking_backButton__lL2_r{padding:0 4px;border:0;background:#0000;color:var(--booking-ink)}.AppointmentBooking_backButton__lL2_r:hover{color:var(--booking-teal)}.AppointmentBooking_errorMessage__Nf_sQ{margin:18px 34px 0;padding:12px 14px;border:1px solid #f1c5ba;border-radius:12px;background:#fff2ee;color:#9b4f3d;font-size:.66rem;line-height:1.5}.AppointmentBooking_spinner__8HCY2{animation:AppointmentBooking_spin__TFO2D .8s linear infinite}.AppointmentBooking_success__fTyp8{display:grid;justify-items:center;padding:56px 40px;text-align:center}.AppointmentBooking_successIcon__l7sEp{display:grid;place-items:center;width:70px;height:70px;margin-bottom:20px;border-radius:50%;background:var(--booking-teal);color:#fff;box-shadow:0 0 0 12px #07877f17}.AppointmentBooking_successIcon__l7sEp svg{width:31px;height:31px}.AppointmentBooking_success__fTyp8>p:not(.AppointmentBooking_eyebrow__m7sZN){max-width:440px;margin:18px auto 0;color:#647c85;font-size:.76rem;line-height:1.7}.AppointmentBooking_success__fTyp8>p strong{color:var(--booking-ink);letter-spacing:.08em}.AppointmentBooking_successReminder__Uknmm{display:flex;align-items:center;gap:10px;max-width:430px;margin-top:22px;padding:13px 15px;border-radius:13px;background:var(--booking-mint);color:var(--booking-ink);font-size:.64rem;text-align:left}.AppointmentBooking_successReminder__Uknmm svg{flex:0 0 auto;width:19px;height:19px;color:var(--booking-teal)}.AppointmentBooking_secondaryButton__nCy6u{margin-top:25px;padding:0 20px;border:1px solid var(--booking-teal);background:#fff;color:var(--booking-teal)}.AppointmentBooking_secondaryButton__nCy6u:hover{background:var(--booking-mint);transform:translateY(-2px)}@keyframes AppointmentBooking_spin__TFO2D{to{transform:rotate(1turn)}}@media (max-width:640px){.AppointmentBooking_bookingCard__rfCT7,.AppointmentBooking_success__fTyp8{border-radius:22px}.AppointmentBooking_bookingHeader__XSSYd{display:block;padding:24px 20px 20px}.AppointmentBooking_bookingHeader__XSSYd h2{max-width:270px}.AppointmentBooking_secureLabel__S3uS5{margin-top:15px}.AppointmentBooking_progress__Xc2Vx{padding:19px 16px}.AppointmentBooking_progress__Xc2Vx:before{top:35px;right:calc(16.66% + 15px);left:calc(16.66% + 15px)}.AppointmentBooking_progress__Xc2Vx li>span{width:31px;height:31px}.AppointmentBooking_progress__Xc2Vx small{font-size:.56rem}.AppointmentBooking_panel___7j6k{padding:25px 20px 26px}.AppointmentBooking_panelHeading__kfW0l h3{font-size:1.12rem}.AppointmentBooking_consultationOption___D2I6{grid-template-columns:43px minmax(0,1fr) 25px;gap:11px;padding:13px}.AppointmentBooking_optionIcon__1iYxa{width:43px;height:43px}.AppointmentBooking_dateGrid__jbjAQ{grid-template-columns:repeat(3,1fr)}.AppointmentBooking_dateGrid__jbjAQ .AppointmentBooking_dateOption__h4Fw0:nth-child(n+7){display:none}.AppointmentBooking_slotLegend__LT0Fx{margin:0 0 12px}.AppointmentBooking_timeGrid__px3hm{grid-template-columns:repeat(3,1fr)}.AppointmentBooking_timeGrid__px3hm button{min-height:64px;padding:8px 5px;grid-template-columns:1fr}.AppointmentBooking_timeGrid__px3hm button>svg{display:none}.AppointmentBooking_slotConfirmation__iJ43F{align-items:stretch;flex-direction:column;padding:15px}.AppointmentBooking_slotConfirmation__iJ43F strong{overflow:visible;line-height:1.4;text-overflow:clip;white-space:normal}.AppointmentBooking_slotConfirmation__iJ43F button{width:100%;min-height:47px}.AppointmentBooking_formGrid__i6UVM,.AppointmentBooking_summary__cMZa4{grid-template-columns:1fr}.AppointmentBooking_fullField__M6L2d{grid-column:auto}.AppointmentBooking_actions__gz45d{align-items:stretch;flex-direction:column-reverse}.AppointmentBooking_actions__gz45d .AppointmentBooking_primaryButton__kufBQ{width:100%}.AppointmentBooking_backButton__lL2_r{min-height:42px}.AppointmentBooking_primaryButton__kufBQ{width:100%}.AppointmentBooking_errorMessage__Nf_sQ{margin:16px 20px 0}.AppointmentBooking_success__fTyp8{padding:46px 22px}}@media (prefers-reduced-motion:reduce){.AppointmentBooking_bookingCard__rfCT7 *,.AppointmentBooking_success__fTyp8 *{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}