:root{--lav:#f1e8ff;--pink:#ff4f8b;--blue:#315bea;--yellow:#ffd34e;--cream:#fff8f1;--ink:#232138;--muted:#807d94;--line:#eae5ef}*{box-sizing:border-box}body{color:var(--ink);background:#fbf9fd;margin:0;font:15px/1.45 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer;background:var(--blue);color:#fff;border:0;border-radius:14px;padding:12px 18px;font-weight:700}button:disabled{opacity:.5;cursor:not-allowed}a{color:var(--blue)}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-.055em;line-height:1.08}h2{letter-spacing:-.035em}input,select,textarea{width:100%;color:var(--ink);background:#fff;border:1px solid #ddd8e9;border-radius:12px;outline:none;padding:11px 12px}input:focus,select:focus,textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #315bea18}label{margin:14px 0;font-size:13px;font-weight:650;display:block}label input,label select,label textarea{margin-top:7px;font-weight:400;display:block}small,.muted{color:var(--muted)}.brand{color:var(--pink);letter-spacing:-.085em;white-space:nowrap;font-size:26px;font-style:italic;font-weight:850;text-decoration:none}.brand b{color:var(--blue);letter-spacing:-.06em;font-style:normal;font-weight:900}.brand span{color:var(--yellow);text-shadow:1px 1px var(--blue);font-style:normal}.eyebrow{color:var(--blue);letter-spacing:.17em;font-size:10px;font-weight:850}.error{color:#a3234f;background:#fff0f1;border-radius:12px;padding:11px 14px;font-size:13px}.centered{background:var(--lav);place-items:center;min-height:100vh;padding:20px;display:grid}.panel{background:#fff;border-radius:26px;padding:40px;box-shadow:0 20px 80px #49228114}.login{width:min(420px,100%)}.login h1{margin:38px 0 12px;font-size:38px}.login button,.login input{width:100%}.login .textlink{text-align:center;margin-top:22px;display:block}.publicHeader{justify-content:space-between;align-items:center;max-width:1200px;margin:auto;padding:26px 28px;display:flex}.publicHeader>span{letter-spacing:.16em;color:var(--blue);font-size:10px;font-weight:800}.bookingPage{background:var(--lav);min-height:100vh}.bookingWrap{grid-template-columns:1fr 1fr;gap:70px;max-width:1200px;margin:30px auto 0;padding:25px 28px 70px;display:grid}.bookingIntro{padding-top:60px;position:relative}.bookingIntro h1{margin:34px 0;font-size:clamp(52px,6.4vw,88px)}.bookingIntro h1 em{color:var(--pink);font-style:normal}.bookingIntro p{color:#686477;max-width:400px;font-size:17px}.pill{background:var(--cream);color:var(--blue);letter-spacing:.13em;border-radius:30px;padding:9px 15px;font-size:10px;font-weight:800}.ornament{color:var(--yellow);text-shadow:4px 5px 0 var(--blue);font-size:170px;position:absolute;top:360px;right:60px}.bookingCard{background:#fff;border-radius:28px;min-height:560px;padding:32px;box-shadow:0 18px 60px #482b7714}.bookingCard h2{margin:25px 0;font-size:31px}.progress{letter-spacing:.12em;color:var(--pink);justify-content:space-between;font-size:11px;font-weight:850;display:flex}.progress span{color:var(--blue)}.choiceList{gap:10px;display:grid}.choice{width:100%;color:var(--ink);text-align:left;border:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;gap:12px;padding:18px;display:flex}.choice:hover,.choice.selected{border-color:var(--pink);background:#fff7fa}.choice strong{font-size:17px;display:block}.choice small{margin-top:4px;font-weight:400;display:block}.choice>span:last-child{text-align:right;color:var(--blue);min-width:72px;font-size:12px}.back{color:var(--blue);background:0 0;padding-left:0}.actions{justify-content:space-between;align-items:center;margin-top:22px;display:flex}.slotGrid{grid-template-columns:repeat(3,1fr);gap:10px;max-height:280px;margin-top:16px;display:grid;overflow:auto}.slotGrid button{color:var(--blue);background:#f6f1fd;border:1px solid #0000}.slotGrid button.selected{border-color:var(--blue);background:var(--lav)}.slotGrid small{font-weight:400;display:block}.twoCols{grid-template-columns:1fr 1fr;gap:12px;display:grid}.check{align-items:flex-start;gap:9px;font-size:12px;font-weight:400;display:flex}.check input{width:auto;margin:3px 0}.button{background:var(--blue);color:#fff;border-radius:14px;padding:12px 18px;text-decoration:none;display:inline-block}.successIcon{background:var(--lav);width:70px;height:70px;color:var(--blue);border-radius:100%;place-items:center;font-size:38px;display:grid}.shell{grid-template-columns:230px 1fr;min-height:100vh;display:grid}.shell aside{border-right:1px solid var(--line);background:#fff;flex-direction:column;height:100vh;padding:28px 18px;display:flex;position:sticky;top:0}.shell aside .brand{font-size:23px}.shell aside>small{color:var(--blue);letter-spacing:.13em;margin-top:4px;font-size:9px;font-weight:750}.shell nav{gap:8px;margin-top:50px;display:grid}.shell nav a,.mobileNav a{color:#5f5b71;border-radius:12px;padding:12px 14px;font-weight:650;text-decoration:none;display:block}.shell nav a:hover,.shell nav a.active{color:var(--blue);background:var(--lav)}.asideBottom{align-items:center;gap:9px;margin-top:auto;font-weight:750;display:flex}.asideBottom small{font-weight:400;display:block}.avatar{background:var(--lav);color:var(--blue);border-radius:50%;flex:none;place-items:center;width:36px;height:36px;font-weight:850;display:inline-grid}.iconButton{color:var(--muted);background:0 0;margin-left:auto;padding:6px;font-size:18px}.work{width:100%;max-width:1300px;min-height:100vh;margin:auto;padding:36px clamp(22px,5vw,72px)}.top{justify-content:space-between;align-items:center;margin-bottom:38px;display:flex}.top h1{margin:4px 0;font-size:42px}.toolbar{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:22px;display:flex}.toolbar label{align-items:center;gap:9px;margin:0;display:flex}.toolbar input,.toolbar select{width:auto}.toolbar .search{width:min(500px,100%)}.segmented{background:#eeeaf4;border-radius:12px;padding:4px}.segmented button{color:var(--muted);background:0 0;padding:8px 13px}.segmented button.on{color:var(--blue);background:#fff;box-shadow:0 1px 4px #0001}.summary{grid-template-columns:repeat(3,1fr);gap:14px;margin:14px 0 36px;display:grid}.summary>div{border:1px solid var(--line);background:#fff;border-radius:18px;padding:23px}.summary strong{color:var(--blue);letter-spacing:-.05em;font-size:32px;display:block}.summary span{color:var(--muted);font-size:12px}.sectionTitle{justify-content:space-between;align-items:center;display:flex}.sectionTitle h2{font-size:22px}.sectionTitle span{color:var(--muted)}.agenda{border:1px solid var(--line);background:#fff;border-radius:18px;overflow:hidden}.visit{color:var(--ink);text-align:left;border-bottom:1px solid var(--line);background:#fff;border-radius:0;align-items:center;gap:16px;width:100%;padding:18px;display:flex}.visit:last-child{border:0}.visit:hover{background:#fcfaff}.visit.cancelled{opacity:.5}.time{min-width:56px;font-size:17px;font-weight:850}.time small{font-size:12px;font-weight:400;display:block}.visitBody{border-left:4px solid var(--pink);flex:1;padding-left:14px}.visitBody strong,.visitBody span{display:block}.visitBody span{color:var(--muted);margin-top:3px;font-size:13px}.badge{color:#6d5d91;background:#f5f1fb;border-radius:20px;padding:5px 9px;font-size:11px}.empty{color:var(--muted);padding:35px}.cards{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:14px;display:grid}.serviceCard{border:1px solid var(--line);background:#fff;border-radius:18px;padding:25px}.serviceCard h3{margin:12px 0;font-size:23px}.serviceCard p{color:var(--blue);font-weight:750}.modalBack{z-index:3;background:#21163388;justify-content:flex-end;display:flex;position:fixed;inset:0}.modal{background:#fff;width:min(520px,100%);padding:30px;position:relative;overflow:auto}.modal h2{margin-top:20px;font-size:30px}.close{background:var(--lav);color:var(--blue);padding:2px 12px;font-size:24px;position:absolute;top:16px;right:20px}.quickActions{flex-wrap:wrap;gap:7px;margin:25px 0;display:flex}.quickActions button,.secondary{background:var(--lav);color:var(--blue);font-size:12px}.divider{background:var(--line);height:1px;margin:26px 0}.textlink{color:var(--blue);background:0 0;border:0;padding:0}.note,.history{background:#f9f6fc;border-radius:12px;padding:13px}.note small,.history small{margin-top:4px;display:block}.suggestions{max-height:150px;overflow:auto}.suggestions button{width:100%;color:var(--blue);background:#faf6ff;margin:2px 0}.hoursRow{grid-template-columns:55px 1fr 1fr;align-items:center;gap:8px;margin:7px 0;display:grid}.hoursRow label{margin:0}.hoursRow input[type=time]{min-width:0}.mobileNav{display:none}.privacy{max-width:700px;margin:60px auto;padding:30px}@media (max-width:800px){.bookingWrap{grid-template-columns:1fr;gap:18px;margin:0;padding:16px}.bookingIntro{padding:15px 4px}.bookingIntro h1{margin:22px 0;font-size:48px}.bookingIntro p{font-size:14px}.ornament{display:none}.bookingCard{min-height:0;padding:23px}.publicHeader{padding:18px}.publicHeader>span{display:none}.shell{display:block}.shell aside{display:none}.work{padding:22px 16px 95px}.top{margin-bottom:25px}.top h1{font-size:34px}.top button{padding:11px;font-size:12px}.summary{gap:8px}.summary>div{padding:13px}.summary strong{font-size:24px}.summary span{font-size:10px}.badge{display:none}.mobileNav{z-index:2;border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom);background:#fff;justify-content:space-around;display:flex;position:fixed;bottom:0;left:0;right:0}.mobileNav a{padding:13px 5px;font-size:10px}.mobileNav a.active{color:var(--pink)}.visit{gap:9px;padding:13px}.time{min-width:48px;font-size:14px}.visitBody{padding-left:9px}.modal{width:100%}}@media (max-width:380px){.slotGrid{grid-template-columns:repeat(2,1fr)}.twoCols{grid-template-columns:1fr}}.productLayout{grid-template-columns:minmax(0,2fr) minmax(260px,1fr);align-items:start;gap:16px;display:grid}.productRow{grid-template-columns:minmax(0,2fr) minmax(100px,1fr) 36px;align-items:end;gap:10px;display:grid}.productRow>label{margin:14px 0}.productRow>label input,.productRow>label select{height:46px}.productRow .secondary{margin-bottom:14px;padding:11px 0}.productPicker{position:relative}.productOptions{z-index:4;border:1px solid var(--line);background:#fff;border-radius:12px;max-height:240px;padding:5px;position:absolute;top:100%;left:0;right:0;overflow:auto;box-shadow:0 12px 32px #21163322}.productOptions button{text-align:left;width:100%;color:var(--ink);background:#fff;border-radius:8px;padding:9px 10px;font-weight:500;display:block}.productOptions button:hover{background:var(--lav);color:var(--blue)}.productOptions>span{color:var(--muted);padding:9px 10px;font-size:13px;display:block}.productSubmit{margin-top:20px}.productSummary{border-bottom:1px solid var(--line);justify-content:space-between;gap:12px;padding:10px 0;display:flex}.productSummary b{white-space:nowrap}@media (max-width:800px){.productLayout{grid-template-columns:1fr}.mobileNav{justify-content:flex-start;overflow-x:auto}.mobileNav a{text-align:center;flex:1;min-width:60px}}.calendarActions{gap:8px;margin:8px 0 16px;display:flex}.calendarGrid{grid-template-columns:repeat(7,minmax(140px,1fr));gap:8px;margin-bottom:18px;display:grid}.calendarDay{border:1px solid var(--line);background:#fff;border-radius:16px;flex-direction:column;gap:9px;min-height:190px;padding:10px;display:flex}.calendarDay.selectedDay{border-color:var(--blue)}.calendarDate{text-align:left;background:var(--lav);width:100%;color:var(--blue);padding:8px}.calendarVisit{background:#f7f2ff;border-radius:10px;padding:8px;font-size:12px}.calendarVisit small,.closedSlot small{color:var(--muted);display:block}.closedSlot{background:#fff0f5;border-radius:10px;justify-content:space-between;align-items:start;gap:8px;padding:9px;font-size:12px;display:flex}.closedSlot .textlink{font-size:11px}.calendarDay>.textlink{text-align:left;margin-top:auto;font-size:11px}.calendarDay>.muted{font-size:11px}.dayBlocks{gap:7px;margin-bottom:12px;display:grid}.dayBlocks:empty,.agenda[hidden]{display:none}@media (max-width:1100px){.calendarGrid{grid-template-columns:repeat(7,160px);overflow-x:auto}}.weekNavigator{align-items:center;gap:7px;display:flex}.weekNavigator strong{text-align:center;min-width:160px;color:var(--blue);font-size:13px}.weekNavigator button{padding:8px 12px}.weekNavigator button[aria-label]{font-size:20px;line-height:1}.languagePicker{border-color:var(--line);background:#fff;width:auto;min-width:110px;padding:9px 12px;font-size:13px;font-weight:650}.topActions,.loginTop{align-items:center;gap:12px;display:flex}.loginTop{justify-content:space-between;margin-bottom:25px}.priceCategory{margin:24px 0 34px}.priceCategory>h3{color:var(--blue);margin:0 0 12px;font-size:17px}.bookingCard .priceCategory{margin:18px 0 25px}.bookingCard .priceCategory>h3{border-bottom:1px solid var(--line);padding-bottom:7px}.bookingLinks{margin-bottom:22px}.bookingLink{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:10px;padding:10px 0;display:flex}.bookingLink a{word-break:break-all;flex:1;min-width:150px}.bookingLink .secondary{margin-left:auto}.masterPill{color:var(--blue);background:#fff;border-radius:15px;padding:12px 16px;font-weight:750;display:inline-block}@media (max-width:620px){.top{flex-wrap:wrap;align-items:flex-start;gap:14px}.topActions{justify-content:space-between;width:100%}.bookingLink a{flex-basis:100%}}.dateNavigator{align-items:end;gap:10px;margin:12px 0 18px;display:flex}.dateNavigator label{flex:1;margin:0}.dateNavigator input{margin-top:6px}.dateNavigator .secondary{margin-bottom:1px;padding:10px 17px;font-size:24px;line-height:1}.visitUsage{border-top:1px solid var(--line);margin-top:24px;padding-top:20px}.visitUsage h3{margin-bottom:12px}.visitUsageTotal{text-align:right;color:var(--blue);margin:12px 0;font-weight:800}.visitUsage form button{margin-top:4px}.reschedulePicker{border:1px solid var(--line);background:#faf7fd;border-radius:16px;margin:18px 0;padding:16px}.reschedulePicker label:first-child{margin-top:0}.publicNav{align-items:center;gap:20px;display:flex}.publicNav>a{font-weight:700;text-decoration:none}.customerPage{background:var(--lav);min-height:100vh;padding-bottom:60px}.customerPanel{background:#fff;border-radius:28px;width:min(760px,100% - 32px);margin:38px auto;padding:clamp(24px,5vw,48px);box-shadow:0 18px 60px #482b7714}.customerPanel>h1{margin:16px 0 28px;font-size:clamp(36px,7vw,58px)}.customerPanel>h2{margin:34px 0 14px;font-size:23px}.customerLead{max-width:560px;color:var(--muted);font-size:16px}.accountForm{max-width:450px;margin-top:25px}.accountForm button{width:100%;margin-top:8px}.accountWelcome{background:#f8f5fc;border-radius:16px;justify-content:space-between;align-items:center;gap:12px;padding:16px;display:flex}.accountWelcome strong,.accountWelcome small{display:block}.accountWelcome small{margin-top:4px}.appointmentList{gap:9px;display:grid}.customerAppointment{border:1px solid var(--line);border-radius:15px;justify-content:space-between;align-items:center;gap:12px;padding:16px;display:flex}.customerAppointment strong,.customerAppointment span,.customerAppointment small{display:block}.customerAppointment span{margin-top:5px}.customerAppointment small{margin-top:4px}.cancelledBadge{color:#a3234f;background:#fff0f2}.noticeSuccess{color:#205c36;background:#effbf2;border-radius:14px;padding:18px}.noticeSuccess p{margin:8px 0 0}.accountFootnote{color:var(--muted);margin-top:24px;font-size:13px}.manageSummary{background:#f8f5fc;border-radius:16px;gap:8px;margin-bottom:28px;padding:18px;display:grid}.manageSummary strong{font-size:20px}.manageActions{gap:10px;margin-top:22px;display:grid}.dangerButton{color:#a3234f;background:#fff0f2;border:1px solid #f3c9d2}.customerPanel .slotGrid{max-height:280px}.customerPanel .slotGrid button.selected{background:#e8eaff}.customerPanel label{font-size:14px}@media (max-width:620px){.publicNav{gap:10px}.publicNav>a{font-size:13px}.customerPanel{margin:16px auto}.customerAppointment{align-items:flex-start}.customerAppointment .badge{display:none}}.accountModes{background:#f5f1fa;border-radius:15px;gap:8px;max-width:450px;margin:0 0 22px;padding:5px;display:flex}.accountModes button{color:var(--muted);background:0 0;flex:1;padding:11px 12px}.accountModes button.active{color:var(--blue);background:#fff;box-shadow:0 2px 9px #21163312}.publicNav .loginNavLink{color:var(--blue);background:#fff;border-radius:12px;padding:10px 14px;box-shadow:0 3px 12px #482b7710}.accountAccess{color:#686477;flex-wrap:wrap;align-items:center;gap:10px 14px;margin-top:26px;font-size:14px;display:flex}.accountAccess a{font-weight:800;text-decoration:none}.accountAccess a:first-of-type{background:var(--blue);color:#fff;border-radius:12px;padding:10px 16px}.accountAccess a:last-of-type{text-underline-offset:3px;text-decoration:underline}@media (max-width:800px){.accountAccess{gap:8px 12px;margin-top:13px;font-size:13px}.accountAccess a:first-of-type{padding:9px 12px}.publicNav .loginNavLink{padding:9px 10px}}@media (max-width:360px){.publicNav .loginNavLink{padding:7px 8px;font-size:11px}}.accountPrompt{margin:0 0 18px;font-weight:750;display:inline-block}.accountPrompt:hover{text-decoration-thickness:2px}.clientPagination{flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;margin:20px 0;display:flex}.clientPagination>span{color:var(--muted);font-size:14px}.clientPagination button:disabled{opacity:.45;cursor:not-allowed}.asideLanguage{margin-top:auto;margin-bottom:14px}.shell aside .asideBottom{margin-top:0}.asideLanguage .languagePicker{width:100%}.mobileLanguage{display:none}.calendarDateField{display:block;margin:0!important}.calendarDateControl{align-items:center;gap:6px;margin-top:7px;display:flex;position:relative}.calendarDateControl input:first-child{width:135px;min-width:0;margin:0}.calendarDateControl button{padding:10px 12px}.calendarDateControl .nativeDatePicker{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.manualTimeToggle{margin:0 0 10px}@media (max-width:800px){.mobileLanguage{display:inline-flex}.mobileLanguage .languagePicker{min-width:96px;padding:9px 7px}.asideLanguage{display:none}}.durationEditor{align-items:end;gap:10px;margin:12px 0;display:flex}.durationEditor label{flex:1}.durationEditor input{margin-bottom:0}.calendarMonthHeader{color:var(--muted);text-align:center;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;margin:8px 0;font-size:12px;font-weight:750;display:grid}.monthCalendar{grid-template-columns:repeat(7,minmax(70px,1fr));gap:5px}.monthCalendar .calendarDay{gap:5px;min-height:118px;padding:6px;overflow:hidden}.monthCalendar .calendarDate{text-align:center;padding:5px}.monthCalendar .calendarVisit,.monthCalendar .closedSlot{padding:5px;font-size:10px}.outsideMonth{opacity:.48}@media (max-width:1100px){.monthCalendar{grid-template-columns:repeat(7,minmax(115px,1fr));overflow-x:auto}.calendarMonthHeader{min-width:805px}}@keyframes tab-enter{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.tabContent{animation:.16s ease-out both tab-enter}@media (prefers-reduced-motion:reduce){.tabContent{animation:none}}.appointmentServiceField{color:#315bea;background:#fff5f9;border:1px solid #ffb8d0;border-radius:16px;padding:14px 16px;font-size:15px;font-weight:800}.appointmentServiceField select{background:#fff;border:2px solid #ff8ab3;min-height:48px;margin-top:9px;font-size:16px;font-weight:650}.appointmentServiceField select:focus{border-color:#315bea;box-shadow:0 0 0 4px #315bea1f}@media (max-width:800px){.work{padding:18px 14px calc(82px + env(safe-area-inset-bottom))}.top{flex-wrap:nowrap;align-items:flex-start;gap:12px;margin-bottom:22px}.top>div:first-child{flex:1;min-width:0}.top h1{overflow-wrap:anywhere;font-size:clamp(25px,7vw,32px);line-height:1.08}.topActions{flex:none;justify-content:flex-end;gap:7px;width:auto}.topActions button{white-space:nowrap;padding:10px 11px;font-size:12px}.toolbar{grid-template-columns:minmax(0,1fr);gap:10px;margin-bottom:16px;display:grid}.toolbar>*,.toolbar select{width:100%;min-width:0}.toolbar .segmented{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.segmented button{padding:9px 6px}.calendarDateField,.calendarDateControl{width:100%}.calendarDateControl input:first-child{flex:1;width:0}.calendarDateControl button{flex:none}.weekNavigator{justify-content:space-between;gap:4px;width:100%}.weekNavigator strong{flex:1;min-width:0;font-size:11px}.weekNavigator button{padding:7px 9px}.sectionTitle{align-items:flex-start;gap:8px}.sectionTitle h2{font-size:19px}.calendarActions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.calendarActions button{white-space:normal;padding:10px 8px;line-height:1.2}.calendarGrid:not(.monthCalendar){grid-template-columns:minmax(0,1fr);overflow:visible}.calendarDay{gap:8px;min-height:0;padding:11px}.calendarMonthHeader{grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;min-width:0;font-size:11px}.calendarMonthHeader span{text-overflow:clip;min-width:0;overflow:hidden}.calendarGrid.monthCalendar{grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;overflow:visible}.monthCalendar .calendarDay{border-radius:8px;gap:2px;min-height:64px;padding:3px}.monthCalendar .calendarDate{min-height:28px;padding:3px 0;font-size:12px}.monthCalendar .calendarVisit{white-space:nowrap;text-align:center;background:0 0;padding:0;font-size:0;line-height:1}.monthCalendar .calendarVisit b{font-size:8px}.monthCalendar .calendarVisit small,.monthCalendar .closedSlot,.monthCalendar>.calendarDay>.textlink{display:none}.monthCalendar .outsideMonth{opacity:.4}.monthCalendar .selectedDay{border:2px solid var(--blue)}.summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:10px 0 22px}.summary>div{min-width:0;padding:10px 7px}.summary strong{font-size:21px}.summary span{font-size:9px;line-height:1.2}.cards{grid-template-columns:minmax(0,1fr);gap:10px}.serviceCard{padding:16px}.serviceCard h3{font-size:19px}.twoCols{grid-template-columns:minmax(0,1fr);gap:0}.productRow{grid-template-columns:minmax(0,1fr) 42px;gap:0 8px}.productRow>.productPicker{grid-column:1/-1}.productRow>label:nth-child(2){grid-area:2/1}.productRow>.secondary{grid-area:2/2;align-self:end}.visit{grid-template-columns:48px minmax(0,1fr) auto;gap:8px;padding:12px;display:grid}.visitBody{min-width:0}.visitBody strong,.visitBody span{text-overflow:ellipsis;overflow:hidden}.clientDirectory .toolbar .search{width:100%}.clientPagination{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.clientPagination>span{text-align:center;grid-area:1/1/auto/-1;font-size:12px}.clientPagination button{min-width:0;padding:10px 6px}.mobileNav{padding:4px 8px calc(4px + env(safe-area-inset-bottom));background:#fff;grid-template-columns:repeat(auto-fit,minmax(68px,1fr));justify-content:stretch;gap:2px;display:grid;bottom:0;left:0;right:0;overflow:visible}.mobileNav a{white-space:normal;overflow-wrap:anywhere;text-align:center;justify-content:center;align-items:center;min-width:0;padding:8px 3px;font-size:11px;line-height:1.15;display:flex}.modalBack{padding-top:env(safe-area-inset-top);align-items:flex-end}.modal{width:100%;max-height:92dvh;padding:24px 16px calc(18px + env(safe-area-inset-bottom));overscroll-behavior:contain;border-radius:22px 22px 0 0}.modal h2{padding-right:34px;font-size:24px}.close{top:10px;right:12px}.quickActions{margin:18px 0}.quickActions button{padding:10px 11px}.serviceCatalog,.clientDirectory{min-width:0}.bookingLinks .bookingLink{gap:8px}}@media (max-width:420px){.work{padding-left:12px;padding-right:12px}.topActions .mobileLanguage{display:none}.summary strong{font-size:19px}.visit{grid-template-columns:42px minmax(0,1fr) auto;gap:7px;padding:10px}.monthCalendar .calendarDay{min-height:56px}}.monthDayCount{background:var(--pink);color:#fff;border-radius:12px;place-items:center;min-width:20px;height:20px;padding:0 5px;font-size:10px;font-weight:850;display:inline-grid}@media (max-width:800px){.calendarMonthHeader{display:none}.calendarGrid.monthCalendar{flex-direction:column;gap:6px;display:flex;overflow:visible}.monthCalendar .calendarDay{border-radius:12px;min-height:50px;padding:8px 8px 8px 104px;display:block;position:relative;overflow:visible}.monthCalendar .calendarDay.emptyDay{min-height:42px;padding-top:4px;padding-bottom:4px}.monthCalendar .calendarDate{text-align:left;border-radius:9px;justify-content:space-between;align-items:center;gap:4px;width:88px;min-height:34px;padding:6px;font-size:11px;display:flex;position:absolute;top:8px;left:8px}.monthCalendar .calendarDay.emptyDay .calendarDate{top:4px}.monthCalendar .monthDayCount{flex:none}.monthCalendar .calendarVisit{white-space:normal;text-align:left;background:#f7f2ff;border-radius:9px;margin:0 0 5px;padding:7px 8px;font-size:12px;line-height:1.35;display:block}.monthCalendar .calendarVisit b{margin-right:4px;font-size:11px;display:inline}.monthCalendar .calendarVisit small{width:100%;margin-top:2px;font-size:11px;display:block}.monthCalendar .closedSlot{background:#fff0f5;border-radius:9px;align-items:flex-start;gap:8px;margin-bottom:5px;padding:7px 8px;font-size:11px;display:flex}.monthCalendar .closedSlot small{font-size:10px;display:block}.monthCalendar .calendarDay>.textlink,.monthCalendar .outsideMonth{display:none}}@media (max-width:420px){.monthCalendar .calendarDay{padding-left:94px}.monthCalendar .calendarDate{width:80px}}@media (max-width:800px){.calendarMonthHeader{grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;min-width:0;margin:8px 0 4px;font-size:11px;display:grid}.calendarGrid.monthCalendar{grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;display:grid;overflow:visible}.monthCalendar .calendarDay{border-radius:8px;flex-direction:column;align-items:stretch;gap:3px;min-width:0;min-height:82px;padding:3px;display:flex;position:relative;overflow:hidden}.monthCalendar .calendarDay.emptyDay{min-height:62px;padding:3px}.monthCalendar .calendarDate,.monthCalendar .calendarDay.emptyDay .calendarDate{text-align:center;border-radius:5px;justify-content:space-between;align-items:center;gap:2px;width:100%;min-width:0;min-height:20px;padding:1px 2px;font-size:10px;display:flex;position:static}.monthCalendar .calendarDate b{font-size:13px}.monthCalendar .monthDayCount{min-width:16px;height:16px;padding:0;font-size:9px}.monthCalendar .calendarVisit{white-space:normal;overflow-wrap:anywhere;text-align:center;background:#f7f2ff;border-radius:5px;max-height:36px;margin:0 0 2px;padding:3px 2px;font-size:8px;line-height:1.1;display:block;overflow:hidden}.monthCalendar .calendarVisit b{white-space:nowrap;font-size:8px;line-height:1.1;display:block}.monthCalendar .calendarVisit small{display:none}.monthCalendar .closedSlot{text-align:center;border-radius:5px;margin:0 0 2px;padding:2px;font-size:8px;line-height:1.1;display:block;overflow:hidden}.monthCalendar .closedSlotInfo{flex-direction:column;align-items:center;gap:1px;min-width:0;display:flex}.monthCalendar .closedSlotInfo.hasReason .closedSlotLabel{display:none}.monthCalendar .closedSlotLabel,.monthCalendar .closedSlotReason{white-space:normal;overflow-wrap:anywhere;text-align:center;font-size:8px;font-weight:750;line-height:1.1}.monthCalendar .closedSlotHours{white-space:nowrap;font-size:8px}.monthCalendar .closedSlotStaff,.monthCalendar .closedSlot .textlink,.monthCalendar .calendarDay>.textlink{display:none}.monthCalendar .workingSlot{color:#245b7a;background:#e2f4ff}.monthCalendar .blockedSlot{color:#8d3550;background:#ffe6ec}.monthCalendar .dayOffSlot{color:#55535e;background:#ededf0}.monthCalendar .outsideMonth{opacity:.35;display:flex}}@media (max-width:420px){.calendarGrid.monthCalendar{gap:2px}.monthCalendar .calendarDay{min-height:76px;padding:2px}.monthCalendar .calendarDay.emptyDay{min-height:55px}.monthCalendar .calendarVisit,.monthCalendar .calendarVisit b,.monthCalendar .closedSlotLabel,.monthCalendar .closedSlotReason,.monthCalendar .closedSlotHours{font-size:9px}}@media (max-width:800px){.calendarGrid:not(.monthCalendar){overscroll-behavior-x:contain;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;scrollbar-width:thin;grid-template-columns:repeat(7,minmax(150px,1fr));padding:0 0 8px;scroll-padding-inline:6px;display:grid;overflow:auto hidden}.calendarGrid:not(.monthCalendar) .calendarDay{scroll-snap-align:start;min-width:0;height:auto;min-height:190px}.calendarGrid:not(.monthCalendar)::-webkit-scrollbar{height:5px}.calendarGrid:not(.monthCalendar)::-webkit-scrollbar-thumb{background:#c9c2d3;border-radius:5px}}@media (max-width:420px){.calendarGrid:not(.monthCalendar){grid-template-columns:repeat(7,minmax(142px,1fr))}}@media (max-width:800px){.monthCalendar .calendarDay:has(.dayOffSlot){background:#fff0f4;border-color:#f2c8d5}.monthCalendar .calendarDay:has(.dayOffSlot) .calendarDate{color:#a33b5d;background:#ffe0e9}.productLayout{gap:12px}.productLayout>.serviceCard{padding:16px}.productRow{border:1px solid var(--line);background:#fff;border-radius:16px;grid-template-columns:minmax(0,1fr) 92px 48px;align-items:end;gap:8px;margin:12px 0;padding:12px}.productRow>.productPicker{grid-area:1/1/auto/-1;margin:0}.productRow>label:nth-child(2){grid-area:2/1/auto/3;margin:0}.productRow>.secondary{grid-area:2/3;width:48px;height:50px;margin:0;padding:0;font-size:22px}.productRow input{min-height:50px;font-size:16px}.productRow .productOptions{max-height:42vh}.productRow .productOptions button{min-height:46px;font-size:16px}.productLayout form>button.secondary{width:100%;min-height:48px}.productSubmit button{width:100%;min-height:50px}.top>div:first-child{align-items:center;gap:10px;display:flex}.top .eyebrow{display:none}.top>div:first-child:before{content:"✦";color:#fff;background:linear-gradient(135deg,#ff4f8b,#8b62ed);border-radius:14px;flex:0 0 40px;place-items:center;width:40px;height:40px;font-size:24px;line-height:1;display:grid;box-shadow:0 5px 14px #8b62ed40}.top h1{margin:0}}@media (max-width:420px){.productRow{grid-template-columns:minmax(0,1fr) 78px 46px;gap:7px;padding:10px}.productRow>.secondary{width:46px}}.monthCalendar .calendarDay:has(.dayOffSlot){background:#f0f1f3;border-color:#d7d9dd}.monthCalendar .calendarDay:has(.dayOffSlot) .calendarDate{color:#51545c;background:#e2e4e8}.languageSettings{justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.languageSettings h2{margin:0;font-size:20px}.languageSettings .languagePicker{width:min(100%,240px)}@media (max-width:800px){.languageSettings{flex-direction:column;align-items:flex-start}.languageSettings .languagePicker{width:100%;min-height:48px;font-size:16px}.mobileNav a{flex-direction:column;justify-content:center;align-items:center;gap:4px;display:flex}.mobileNav svg{stroke:currentColor;stroke-width:2px;fill:none;stroke-linecap:round;stroke-linejoin:round;flex:none;width:22px;height:22px}.mobileNav a.active svg{color:var(--pink)}.toolbar>.calendarDateField{width:100%;margin:0!important;display:block!important}.calendarDateControl{width:100%;margin:0;display:block}.calendarDateControl input[type=date]{width:100%;min-width:0;min-height:50px;margin:0;padding:10px 12px;font-size:16px;display:block}.mobileNav{grid-template-columns:repeat(auto-fit,minmax(52px,1fr));align-items:center}.mobileNav a{min-height:56px;padding:6px 4px}.mobileNav .navGlyph{font-size:30px;line-height:1;display:block}.top>div:first-child:before{content:"";background:#fff url(/logo-compact.svg) 50%/contain no-repeat;border-radius:11px;flex:0 0 78px;width:78px;height:42px;font-size:0;box-shadow:0 3px 12px #23213814}}@media (max-width:380px){.top>div:first-child:before{flex-basis:64px;width:64px;height:36px}}@media (max-width:800px){.toolbar>.calendarDateField{width:100%;max-width:none}.calendarDateControl{width:100%}.calendarDateControl input[type=date]{width:100%;min-height:56px;padding:12px 14px;font-size:20px;line-height:1.25}.mobileNav a{min-height:62px}.mobileNav svg{stroke:currentColor;stroke-width:2px;fill:none;stroke-linecap:round;stroke-linejoin:round;width:32px;height:32px;display:block}.mobileNav a.active svg{color:var(--pink)}.mobileNav .navGlyph{display:none}.work,.tabContent,.toolbar{width:100%;min-width:0;max-width:100%}.toolbar{grid-template-columns:minmax(0,1fr)}.toolbar>.calendarDateField{width:100%;min-width:0;max-width:100%;margin:0!important;display:block!important}.calendarDateControl{width:100%;min-width:0;max-width:100%;display:block;overflow:hidden}.calendarDateControl input[type=date]{box-sizing:border-box;flex:none;width:100%;max-width:100%;min-height:56px;margin:0;padding:12px;font-size:20px;display:block;min-width:0!important}.calendarDateControl input[type=date]::-webkit-date-and-time-value{text-align:left;min-width:0}.calendarDateControl input[type=date]::-webkit-calendar-picker-indicator{margin-left:4px;padding:0}.top h1{letter-spacing:-.045em;font-size:clamp(25px,6.8vw,29px);font-weight:800;line-height:1.12}.toolbar>.calendarDateField{font-size:14px;line-height:1.35}.calendarDateControl input[type=date]{letter-spacing:-.02em;font-size:20px;font-weight:550}.summary strong{font-size:23px;line-height:1.05}.summary span{font-size:11px;line-height:1.25}.sectionTitle h2{font-size:20px;font-weight:750;line-height:1.2}.sectionTitle>span{font-size:14px;line-height:1.3}.empty{font-size:15px;line-height:1.5}.shell,.work,.tabContent,.toolbar{box-sizing:border-box;width:100%;min-width:0;max-width:100vw}.work{overflow-x:clip}.work .toolbar{grid-template-columns:minmax(0,1fr);display:grid}.work .toolbar>.calendarDateField,.work .calendarDateControl{box-sizing:border-box;width:100%;min-width:0;max-width:100%}.work input[type=date]{box-sizing:border-box;letter-spacing:normal;appearance:none;margin-inline:0;font-family:inherit;font-size:20px;font-weight:500;line-height:1.3;display:block;width:100%!important;min-width:0!important;max-width:100%!important}.work input[type=date]::-webkit-date-and-time-value{box-sizing:border-box;text-align:left;width:100%;min-width:0;max-width:100%;display:block}}.settingsSections{gap:12px;min-width:0;display:grid}.settingsGroup{border:1px solid var(--line);background:#fff;border-radius:16px;min-width:0;overflow:hidden}.settingsGroup>summary{cursor:pointer;min-height:58px;color:var(--ink);justify-content:space-between;align-items:center;gap:12px;padding:15px 18px;font-size:16px;font-weight:750;list-style:none;display:flex}.settingsGroup>summary::-webkit-details-marker{display:none}.settingsGroup>summary:after{content:"";border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);flex:none;width:9px;height:9px;transition:transform .16s;transform:rotate(45deg)}.settingsGroup[open]>summary{color:var(--blue)}.settingsGroup[open]>summary:after{border-color:var(--blue);transform:rotate(225deg)}.settingsPanel{border-top:1px solid var(--line);min-width:0;padding:14px}.settingsPanel.settingsGrid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:12px;display:grid}.settingsPanel>.serviceCard{min-width:0;margin:0;padding:16px}.settingsPanel .serviceCard h2{margin:0 0 14px;font-size:19px}.settingsPanel .bookingLinks{margin:0}.settingsPanel .languageSettings{justify-content:space-between;align-items:center;gap:14px;display:flex}.settingsPanel .languageSettings .languagePicker{width:min(100%,240px)}.settingsNested{padding-top:16px}.settingsNested>.clientDirectory,.settingsNested>.serviceCatalog{min-width:0}@media (max-width:800px){.settingsSections{gap:9px}.settingsGroup{border-radius:14px}.settingsGroup>summary{min-height:56px;padding:14px 15px;font-size:16px}.settingsPanel{padding:10px}.settingsPanel.settingsGrid{grid-template-columns:minmax(0,1fr);gap:10px}.settingsPanel>.serviceCard{padding:14px}.settingsPanel .serviceCard h2{margin-bottom:12px;font-size:18px}.settingsPanel .languageSettings{flex-direction:column;align-items:stretch}.settingsPanel .languageSettings .languagePicker{width:100%;min-height:48px;font-size:16px}.settingsNested{padding:14px 10px}.settingsPanel .hoursRow{grid-template-columns:minmax(70px,1.05fr) repeat(2,minmax(0,1fr));align-items:center;gap:6px;width:100%;min-width:0;display:grid}.settingsPanel .hoursRow label{overflow-wrap:anywhere;align-items:center;gap:5px;min-width:0;font-size:12px;line-height:1.2;display:flex}.settingsPanel .hoursRow label input[type=checkbox]{flex:none;width:16px;height:16px;margin:0}.settingsPanel .hoursRow input[type=time]{width:100%;min-width:0;max-width:100%;padding:8px 4px;font-size:14px;line-height:1.2;display:block}}@media (max-width:360px){.settingsPanel .hoursRow{grid-template-columns:minmax(64px,.95fr) repeat(2,minmax(0,1fr));gap:4px}.settingsPanel .hoursRow label{gap:4px;font-size:11px}.settingsPanel .hoursRow input[type=time]{padding-inline:2px;font-size:13px}}@media (max-width:800px){.settingsPanel .hoursRow{grid-template-columns:64px minmax(0,1fr) minmax(0,1fr);column-gap:8px}.settingsPanel .hoursRow input[type=time]{box-sizing:border-box;text-align:center;appearance:none;justify-self:center;margin-inline:auto;width:calc(100% - 8px)!important;min-width:0!important;max-width:calc(100% - 8px)!important}}@media (max-width:360px){.settingsPanel .hoursRow{grid-template-columns:60px minmax(0,1fr) minmax(0,1fr);column-gap:6px}}@media (max-width:800px){.settingsPanel input[type=datetime-local]{box-sizing:border-box;appearance:none;margin-inline:0;padding-inline:8px;font-family:inherit;font-size:16px;line-height:1.3;display:block;width:100%!important;min-width:0!important;max-width:100%!important}.settingsPanel input[type=datetime-local]::-webkit-date-and-time-value{box-sizing:border-box;text-align:left;width:100%;min-width:0;max-width:100%;margin:0;display:block}.clientRecordModal{padding:26px 16px calc(18px + env(safe-area-inset-bottom))}.clientRecordIdentity h2{overflow-wrap:anywhere;margin:7px 36px 6px 0;padding:0;font-size:24px;line-height:1.15}.clientRecordIdentity p{color:var(--muted);overflow-wrap:anywhere;margin:0;font-size:13px;line-height:1.4}.clientRecordSection{border-top:1px solid var(--line);min-width:0;margin-top:14px;padding-top:13px}.clientRecordSection h3{margin:0 0 9px;font-size:16px;line-height:1.25}.clientRecordSection form{gap:6px;min-width:0;display:grid}.clientRecordSection label{margin:2px 0 6px;font-size:12px;line-height:1.3}.clientRecordSection input,.clientRecordSection textarea{box-sizing:border-box;width:100%;min-width:0;max-width:100%;margin-top:6px;padding:10px 11px;font-size:16px;line-height:1.35}.clientRecordSection form button:not(.close){border-radius:11px;justify-self:start;width:auto;min-width:112px;min-height:42px;padding:9px 14px;font-size:13px;line-height:1.2}.clientRecordModal .note,.clientRecordModal .history{overflow-wrap:anywhere;border-radius:11px;margin:0 0 7px;padding:10px 11px;font-size:13px;line-height:1.4}.clientRecordModal .note small,.clientRecordModal .history small{margin-top:4px;font-size:11px;line-height:1.3}.clientEmailSection{margin-top:12px;padding-top:12px}.topActions>button{display:none}.mobileNav{min-height:64px;padding:5px 6px calc(5px + env(safe-area-inset-bottom));justify-content:stretch;align-items:center;gap:0;display:flex;overflow:visible}.mobileNavGroup{flex:1 1 0;justify-content:space-around;align-items:center;min-width:0;display:flex}.mobileNavGroup a{flex:0 64px;min-width:0;min-height:52px}.mobileAddAppointment{background:var(--pink);color:#fff;border:4px solid #fff;border-radius:50%;flex:0 0 58px;place-items:center;width:58px;min-width:58px;height:58px;margin:-26px 5px 0;padding:0;font-size:36px;font-weight:500;line-height:1;display:grid;box-shadow:0 5px 16px #ff4f8b55}.mobileAddAppointment span{display:block;transform:translateY(-1px)}}@media (max-width:420px){.mobileAddAppointment{flex-basis:54px;width:54px;min-width:54px;height:54px;margin-top:-23px;font-size:33px}}@media (min-width:801px){.mobileAddAppointment{display:none}}.calendarGrid:not(.monthCalendar) .calendarDate{justify-content:space-between;align-items:baseline;gap:8px;min-height:42px;padding:8px 11px;display:flex}.calendarGrid:not(.monthCalendar) .calendarDate span{font-size:13px;font-weight:700;line-height:1.2}.calendarGrid:not(.monthCalendar) .calendarDate b{letter-spacing:-.025em;font-size:18px;font-weight:850;line-height:1.1}.calendarGrid:not(.monthCalendar) .calendarVisit{font-size:13px;line-height:1.35}.calendarGrid:not(.monthCalendar) .calendarVisit b{font-size:14px}.calendarGrid:not(.monthCalendar) .calendarVisit small{font-size:12px;line-height:1.3}.calendarGrid:not(.monthCalendar) .closedSlot,.calendarGrid:not(.monthCalendar) .calendarDay>.muted,.calendarGrid:not(.monthCalendar) .calendarDay>.textlink{font-size:13px;line-height:1.35}@media (max-width:800px){.calendarGrid:not(.monthCalendar) .calendarDate{min-height:46px;padding:9px 10px}.calendarGrid:not(.monthCalendar) .calendarDate span{font-size:14px}.calendarGrid:not(.monthCalendar) .calendarDate b{font-size:20px}.calendarGrid:not(.monthCalendar) .calendarVisit,.calendarGrid:not(.monthCalendar) .closedSlot{font-size:13px}.calendarGrid:not(.monthCalendar) .calendarVisit b{font-size:15px}.calendarGrid:not(.monthCalendar) .calendarVisit small{font-size:12px}.calendarGrid:not(.monthCalendar) .calendarDay>.muted,.calendarGrid:not(.monthCalendar) .calendarDay>.textlink{font-size:13px}.top h1{text-align:right;flex:1;min-width:0}.segmented button{min-height:48px;padding:10px 5px;font-size:17px;font-weight:700;line-height:1.2}.weekNavigator strong{letter-spacing:-.015em;font-size:14px}}@media (max-width:380px){.segmented button{font-size:16px}}@media (max-width:800px){.publicHeader{box-sizing:border-box;gap:10px;width:100%;min-width:0;padding:14px 16px}.publicHeader .brand{font-size:22px}.publicHeader>a:last-child{white-space:nowrap;font-size:13px}.bookingWrap{box-sizing:border-box;width:100%;min-width:0;max-width:100%;padding:8px 14px calc(24px + env(safe-area-inset-bottom));grid-template-columns:minmax(0,1fr);gap:14px;margin:0}.bookingIntro{min-width:0;padding:8px 2px 0}.bookingIntro .pill{padding:7px 11px;font-size:9px;display:inline-block}.bookingIntro h1{overflow-wrap:anywhere;margin:16px 0 10px;font-size:clamp(37px,10vw,48px);line-height:1}.bookingIntro p{max-width:36ch;margin:0;font-size:14px;line-height:1.45}.bookingCard{box-sizing:border-box;border-radius:22px;width:100%;min-width:0;min-height:0;padding:20px 16px;box-shadow:0 10px 34px #482b7712}.bookingCard h2{margin:17px 0;font-size:clamp(22px,6vw,27px);line-height:1.15}.bookingCard .progress{gap:8px;font-size:10px}.bookingCard .choice{border-radius:13px;min-height:58px;padding:13px 12px}.bookingCard .choice strong{font-size:15px;line-height:1.3}.bookingCard .choice>span:last-child{min-width:58px;font-size:11px}.bookingCard label{margin:12px 0;font-size:13px;line-height:1.35}.bookingCard input:not([type=checkbox]),.bookingCard select,.bookingCard textarea{box-sizing:border-box;width:100%;min-width:0;min-height:48px;padding:11px 12px;font-size:16px;line-height:1.35}.bookingCard textarea{min-height:76px}.bookingCard .slotGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:38vh;margin-top:12px}.bookingCard .slotGrid button{min-height:48px;padding:10px 8px;font-size:14px}.bookingCard .actions{gap:10px;margin-top:18px}.bookingCard .actions button{min-height:48px;padding:11px 13px;font-size:14px}.bookingCard .check{align-items:flex-start;gap:9px;font-size:12px;line-height:1.4}.customerPage{box-sizing:border-box;min-height:100vh;padding:0 0 calc(24px + env(safe-area-inset-bottom));overflow-x:clip}.customerPage .publicHeader{z-index:1;background:var(--lav);position:sticky;top:0}.customerPanel{box-sizing:border-box;border-radius:22px;width:calc(100% - 24px);min-width:0;margin:12px auto;padding:24px 18px}.customerPanel>.eyebrow{letter-spacing:.13em;font-size:9px}.customerPanel>h1{overflow-wrap:anywhere;margin:12px 0 20px;font-size:clamp(32px,9vw,42px);line-height:1.05}.customerPanel>h2{margin:26px 0 11px;font-size:20px}.customerLead{font-size:15px;line-height:1.5}.accountForm{max-width:none;margin-top:18px}.accountForm label{margin:12px 0;font-size:14px}.accountForm input{box-sizing:border-box;width:100%;min-width:0;min-height:50px;font-size:16px}.accountForm button{min-height:50px;padding:12px 14px;font-size:14px}.accountWelcome{align-items:flex-start;gap:10px;padding:13px}.accountWelcome>div{overflow-wrap:anywhere;min-width:0}.accountWelcome button{flex:none;min-height:42px;padding:9px 11px;font-size:12px}.appointmentList{min-width:0}.customerAppointment{align-items:flex-start;gap:10px;min-width:0;padding:13px}.customerAppointment>div{overflow-wrap:anywhere;min-width:0}.customerAppointment strong{font-size:14px;line-height:1.35}.customerAppointment span{overflow-wrap:anywhere;font-size:13px;line-height:1.4}.customerAppointment small{font-size:12px;line-height:1.35}.customerAppointment .badge{white-space:normal;text-align:center;flex:none;max-width:42%;font-size:10px;line-height:1.2;display:inline-flex}.accountFootnote{font-size:12px;line-height:1.45}}@media (max-width:420px){.bookingWrap{padding-inline:10px}.bookingCard{padding:18px 13px}.bookingCard .choice{gap:8px;padding-inline:10px}.bookingCard .choice>span:last-child{min-width:52px}.customerPanel{width:calc(100% - 20px);padding:21px 14px}.customerAppointment{gap:7px;padding:11px}.customerAppointment .badge{max-width:38%;padding:4px 6px}}.fieldHint{color:var(--muted);margin-top:6px;font-size:13px;font-weight:400;line-height:1.4;display:block}@media (max-width:800px){.publicHeader{justify-content:space-between}.publicNav{gap:8px;min-width:0}.publicNav>a{white-space:nowrap;font-size:13px}.publicNav .languagePicker{min-width:76px;padding:9px 6px;font-size:13px}.bookingIntro{padding-top:3px}.bookingIntro h1{margin:10px 0 8px;font-size:clamp(32px,8.5vw,39px);line-height:1.04}.bookingIntro>p:not(.masterPill){display:none}.bookingIntro .pill{font-size:9px}.customerPage .publicHeader{min-height:58px}.customerPanel{max-width:560px}.accountModes{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;width:100%;max-width:none;margin-bottom:17px;display:grid}.accountModes button{min-width:0;min-height:46px;padding:10px 7px;font-size:14px;line-height:1.25}.accountForm label{min-width:0}.accountForm input{display:block}.accountForm button{white-space:normal;width:100%;line-height:1.3}.fieldHint{font-size:13px}.noticeSuccess,.error{overflow-wrap:anywhere}}@media (max-width:360px){.publicHeader{gap:6px;padding-inline:10px}.publicHeader .brand{font-size:19px}.publicHeader>a:last-child,.publicNav>a{font-size:12px}.publicNav{gap:5px}.publicNav .languagePicker{min-width:68px;padding-inline:4px;font-size:12px}.customerPanel{width:calc(100% - 16px);padding-inline:12px}.accountModes button{font-size:13px}}
