:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--background:#f6f1e8;--foreground:#1f1a17;--muted:#6f6257;--card:#fffdf9eb;--border:#1f1a171f;--accent:#b8643c;--accent-strong:#8e4526;--accent-soft:#b8643c24;--success:#2d7a54;--success-soft:#2d7a541f;--danger:#a14634;--danger-soft:#a1463424;--shadow:0 20px 50px #3b2c1f14;--font-body:"Segoe UI", sans-serif}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{background:radial-gradient(circle at top right, #b8643c33, transparent 28%), linear-gradient(180deg, #fcf8f3 0%, var(--background) 100%);color:var(--foreground);font-family:var(--font-body)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.eyebrow{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;margin:0;font-size:.85rem;font-weight:700}.muted{color:var(--muted)}.notice{border-radius:18px;margin:0;padding:14px 16px;line-height:1.5}.notice--error{background:var(--danger-soft);color:var(--danger);border:1px solid #a146342e}.notice--success{background:var(--success-soft);color:var(--success);border:1px solid #2d7a542e}.notice--warning{color:#79540f;background:#b57f2221;border:1px solid #b57f2233}.notice--neutral{border:1px solid var(--border);color:var(--muted);background:#6f625717}.button{cursor:pointer;border:0;border-radius:16px;justify-content:center;padding:14px 18px;transition:transform .15s,box-shadow .15s,background-color .15s;display:inline-flex}.button:hover{transform:translateY(-1px)}.button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline-offset:2px;outline:3px solid #b8643c59}.button:disabled{cursor:not-allowed;opacity:.55;transform:none}.button--primary{background:linear-gradient(135deg, var(--accent) 0%, var(--accent-strong) 100%);color:#fff7f0;box-shadow:0 16px 30px #8e45263d}.button--ghost{border:1px solid var(--border);color:var(--foreground);background:#ffffff80}.button--full{width:100%}.text-link{color:var(--accent-strong);font-weight:700}.sr-only{clip:rect(0, 0, 0, 0);width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.field{gap:8px;display:grid}.field span{color:var(--muted);font-size:.95rem}.field input,.field select,.field textarea,.inline-form input,.inline-form select,.assignment-row input,.appointment-form input,.appointment-form select,.appointment-form textarea,.search-form input{border:1px solid var(--border);color:var(--foreground);background:#ffffffd6;border-radius:14px;width:100%;min-width:0;padding:13px 14px}.field textarea{resize:vertical}.field-hint{color:var(--muted);font-size:.8rem}.check-field{color:var(--muted);align-items:center;gap:8px;display:inline-flex}.form-grid,.inline-form{gap:14px;display:grid}.catalog-list,.compact-list,.details-body,.subsection{gap:16px;display:grid}.consumable-rules{gap:14px;display:grid}.consumable-service{border:1px solid var(--border);border-radius:18px;gap:14px;padding:16px;display:grid}.consumable-service>header,.consumable-rule{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.consumable-service>header>div{gap:4px;display:grid}.consumable-service small{color:var(--muted)}.consumable-rule{background:#6f625712;border-radius:14px;padding:10px 12px}.stock-value{background:var(--success-soft);color:var(--success);border-radius:999px;padding:6px 10px;font-weight:800}.stock-value--low{background:var(--danger-soft);color:var(--danger)}.visit-completion{background:#b8643c12;border:1px solid #b8643c33;border-radius:18px;padding:18px}.payment-summary{background:var(--success-soft);border-radius:18px;padding:18px}.catalog-item>summary{cursor:pointer;flex-wrap:wrap;align-items:center;gap:10px;list-style-position:outside;display:flex}.details-body{border-top:1px solid var(--border);margin-top:18px;padding-top:18px}.color-dot{box-shadow:0 0 0 1px var(--border);border:2px solid #ffffffe6;border-radius:999px;width:16px;height:16px}.empty-state{color:var(--muted);text-align:center}.client-search,.search-form,.appointment-form,.service-options,.history-list,.audit-panel,.audit-row,.audit-diff{gap:14px;display:grid}.client-search h3,.client-search p,.service-picker p,.audit-panel p{margin:0}.field-error{color:var(--danger)}.client-mode-switch{grid-template-columns:1fr 1fr;gap:6px;display:grid}.client-mode-switch button{border:1px solid var(--border);color:var(--muted);background:#ffffffb8;border-radius:12px;padding:11px}.client-mode-switch button.is-active{background:var(--foreground);color:#fff}.inline-client-fields,.duplicate-client-list{gap:10px;display:grid}.inline-client-fields{border:1px solid var(--border);border-radius:16px;grid-template-columns:repeat(2,minmax(0,1fr));padding:14px}.inline-client-fields label{gap:7px;display:grid}.inline-client-fields label.check-field{align-items:center;display:flex}.inline-client-fields label.check-field input{flex:none;width:auto}.duplicate-client-list{grid-column:1/-1}@media (max-width:640px){.inline-client-fields{grid-template-columns:1fr}}.metric-grid,.appointment-summary{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;display:grid}.metric-grid>div,.appointment-summary>div{background:#b8643c0f;border-radius:14px;gap:5px;padding:13px;display:grid}.metric-grid span,.appointment-summary span,.audit-diff span{color:var(--muted);font-size:.82rem}.history-row,.audit-row{border:1px solid var(--border);border-radius:15px;align-items:start;padding:13px}.history-row{gap:10px;display:grid}.history-row>div,.audit-row>div:first-child{gap:4px;display:grid}.history-row small,.audit-row small{color:var(--muted)}.status-pill--neutral{color:var(--muted);background:#6f62571f}.appointment-status{border-radius:999px;padding:6px 10px;font-size:.78rem;font-weight:700;display:inline-flex}.appointment-status--new{color:#315f8c;background:#446f9a1f}.appointment-status--confirmed{color:var(--success);background:#2d7a541f}.appointment-status--in_progress{color:#79540f;background:#b57f2224}.appointment-status--completed{color:#1d6241;background:#2d7a5433}.appointment-status--no_show,.appointment-status--cancelled{background:var(--danger-soft);color:var(--danger)}.service-picker{border:1px solid var(--border);border-radius:18px;margin:0;padding:14px}.service-picker legend{color:var(--muted);padding:0 7px}.service-option{border:1px solid var(--border);cursor:pointer;border-radius:14px;align-items:start;gap:10px;padding:12px;display:flex}.service-option:has(input:checked){background:var(--accent-soft);border-color:#b8643c52}.service-option input{width:auto;margin-top:3px}.service-option span{gap:4px;display:grid}.service-option small{color:var(--muted)}.appointment-totals{color:#fff7f0;background:#1f1a17eb;border-radius:16px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 18px;padding:14px 16px;display:flex}.slot-picker,.status-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.slot-picker select{flex:150px}.audit-panel>summary,.audit-row details>summary{cursor:pointer}.audit-diff pre{color:#f8eee5;white-space:pre-wrap;background:#211b17;border-radius:12px;max-height:260px;margin:5px 0 0;padding:12px;font-size:.75rem;overflow:auto}.schedule-masters,.schedule-sections,.schedule-section,.schedule-list{gap:16px;display:grid}.schedule-master>summary{cursor:pointer;flex-wrap:wrap;align-items:center;gap:10px;display:flex}.schedule-section{border-bottom:1px solid var(--border);padding-bottom:22px}.schedule-section:last-child{border-bottom:0;padding-bottom:0}.schedule-section h3,.schedule-section p{margin:0}.schedule-form{background:#b8643c0f;border:1px solid #b8643c1f;border-radius:18px;align-items:end;gap:12px;padding:14px;display:grid}.schedule-form input,.schedule-form select,.break-form input{border:1px solid var(--border);color:var(--foreground);background:#ffffffe0;border-radius:12px;width:100%;min-width:0;padding:11px 12px}.schedule-row{border:1px solid var(--border);border-radius:16px;align-items:start;gap:12px;padding:14px;display:grid}.schedule-row--off{background:#6f625714}.schedule-row>div:first-child,.break-editor__body{gap:5px;display:grid}.schedule-row small,.empty-inline{color:var(--muted)}.schedule-row__actions{flex-wrap:wrap;align-items:start;gap:8px;display:flex}.button--compact{border-radius:11px;padding:8px 11px}.button--danger{background:var(--danger-soft);color:var(--danger)}.break-editor{min-width:min(100%,420px)}.break-editor>summary{cursor:pointer;padding:8px 0}.break-editor__body{background:#ffffff8c;border-radius:14px;margin-top:6px;padding:12px}.break-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.break-form{gap:8px;display:grid}.assignment-row,.service-editor{border:1px solid var(--border);border-radius:16px;gap:12px;padding:14px;display:grid}.assignment-row div{gap:4px;display:grid}.assignment-row small{color:var(--muted)}.settings-flags{border:1px solid var(--border);border-radius:16px;flex-wrap:wrap;gap:18px;padding:14px;display:flex}.settings-flags legend{color:var(--muted);padding:0 6px}.stack-form{gap:16px;display:grid}.auth-shell{align-items:center;gap:20px;width:min(1040px,100% - 32px);min-height:100vh;margin:0 auto;padding:32px 0;display:grid}.auth-panel{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:28px;padding:28px}.auth-panel--accent{background:radial-gradient(circle at 100% 0,#b8643c38,#0000 36%),linear-gradient(#ffffffdb 0%,#fff9f3f5 100%)}.auth-panel h1,.auth-panel h2,.page-header h2,.card h3{margin:0}.auth-panel p,.page-copy,.card p,.card li,.user-row p{line-height:1.6}.auth-panel__header{gap:10px;margin-bottom:20px;display:grid}.admin-shell{min-height:100vh;display:grid}.admin-sidebar{color:#f9f2ea;background:#201915f2;gap:24px;padding:28px 22px;display:grid}.admin-brand{gap:10px;display:grid}.admin-brand h1{margin:0;font-size:2rem}.admin-nav{gap:8px;display:grid}.admin-nav a{color:#f9f2ead6;border-radius:14px;padding:12px 14px}.admin-nav a:hover{color:#fff;background:#ffffff14}.admin-main{padding:28px 16px 40px}.calendar-page{min-width:0}.calendar-toolbar{flex-wrap:wrap;align-items:center;gap:12px;padding:14px;display:flex}.calendar-view-switch{background:#6f625717;border-radius:14px;padding:4px;display:flex}.calendar-view-switch a{color:var(--muted);border-radius:11px;padding:9px 14px;font-weight:700}.calendar-view-switch a.is-active{color:var(--accent-strong);background:#fff;box-shadow:0 5px 16px #3b2c1f1a}.calendar-period{text-align:center;flex:300px;justify-content:center;align-items:center;gap:10px;display:flex}.calendar-period strong{text-transform:capitalize;min-width:min(340px,62vw)}.calendar-arrow,.details-close{border:1px solid var(--border);background:#ffffffa6;border-radius:12px;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.2rem;display:inline-flex}.calendar-date-form{align-items:center;gap:8px;display:flex}.calendar-date-form input{border:1px solid var(--border);color:var(--foreground);background:#fff;border-radius:12px;padding:9px 10px}.calendar-scroll{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:22px;max-width:100%;overflow:auto}.day-calendar{grid-template-columns:80px repeat(var(--calendar-columns,1), minmax(230px, 1fr));display:grid;position:relative}.day-calendar:has(.day-calendar__master:nth-of-type(2)){grid-template-columns:80px repeat(auto-fit,minmax(230px,1fr))}.day-calendar__corner,.day-calendar__master{border-bottom:1px solid var(--border);z-index:8;background:#fffdf9fa;align-items:center;gap:8px;min-height:58px;padding:12px;display:flex;position:sticky;top:0}.day-calendar__master{min-width:0;overflow:hidden}.day-calendar__master strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.day-calendar__corner{color:var(--muted);z-index:9;font-size:.8rem;left:0}.day-calendar__time{border-right:1px solid var(--border);background:#ffffff59;position:relative}.day-calendar__time span{color:var(--muted);padding-right:10px;font-size:.75rem;position:absolute;right:0;transform:translateY(-50%)}.day-calendar__lane{border-right:1px solid var(--border);min-width:230px;position:relative}.calendar-hour-line{border-top:1px solid #1f1a1714;position:absolute;left:0;right:0}.calendar-working,.calendar-free,.calendar-unavailable,.calendar-appointment{position:absolute;left:5px;right:5px;overflow:hidden}.calendar-working{pointer-events:none;background:#2d7a540a;border-left:2px solid #2d7a5438}.calendar-free{color:var(--success);z-index:2;background:repeating-linear-gradient(135deg,#2d7a540a,#2d7a540a 8px,#2d7a5414 8px 9px);border:1px dashed #2d7a544d;border-radius:10px;padding:5px 7px;font-size:.72rem;display:grid}.calendar-free small,.calendar-unavailable small,.calendar-appointment small{font-size:.68rem}.calendar-unavailable{color:var(--muted);z-index:3;background:#6f625724;border:1px solid #6f62572e;border-radius:9px;padding:5px 7px;font-size:.7rem;display:grid}.calendar-unavailable--blocked_time{color:var(--danger);background:#a146341a}.calendar-appointment{border:1px solid var(--accent);z-index:5;background:#fff8f2;border-left-width:5px;border-radius:11px;flex-direction:column;justify-content:center;gap:1px;min-width:0;padding:4px 8px;display:flex;box-shadow:0 6px 18px #3b2c1f1f}.calendar-appointment strong,.calendar-appointment span,.calendar-appointment small{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:100%;display:block;overflow:hidden}.calendar-appointment strong{font-size:.78rem;line-height:1.15}.calendar-appointment span{color:var(--muted);font-size:.68rem;line-height:1.15}.calendar-appointment small{font-size:.65rem;line-height:1.15}.calendar-appointment--cancelled,.calendar-appointment--no_show{opacity:.56;text-decoration:line-through}.calendar-appointment--in_progress{background:#fff3d9}.calendar-appointment--completed{background:#eef8f2}.calendar-day-off{color:var(--muted);text-align:center;padding-top:18px;font-size:.78rem;position:absolute;top:0;left:0;right:0}.calendar-legend{color:var(--muted);flex-wrap:wrap;gap:16px;font-size:.82rem;display:flex}.calendar-legend span{align-items:center;gap:6px;display:inline-flex}.legend-dot{border-radius:4px;width:12px;height:12px}.legend-dot--free{background:var(--success-soft);border:1px dashed var(--success)}.legend-dot--busy{background:var(--accent-soft);border:1px solid var(--accent)}.legend-dot--break{background:#6f62572e}.week-calendar{gap:14px;display:grid}.week-day{padding:0;overflow:hidden}.week-day>header,.calendar-details>header{justify-content:space-between;align-items:center;gap:14px;display:flex}.week-day>header{border-bottom:1px solid var(--border);background:#b8643c12;padding:16px 18px}.week-day>header div{text-transform:capitalize;gap:2px;display:grid}.week-day>header span{color:var(--muted);font-size:.75rem}.week-day__lanes{display:grid}.week-master{gap:10px;padding:14px 18px;display:grid}.week-master+.week-master{border-top:1px solid var(--border)}.week-master__name{align-items:center;gap:8px;display:flex}.week-master__content{gap:7px;display:grid}.week-appointment{background:var(--accent-soft);border-radius:10px;grid-template-columns:auto minmax(0,1fr);gap:2px;padding:8px 10px;display:grid}.week-appointment small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;grid-column:2;overflow:hidden}.week-appointment--cancelled,.week-appointment--no_show{opacity:.55;text-decoration:line-through}.week-free{color:var(--success);font-size:.76rem}.calendar-empty-label{color:var(--muted);font-size:.8rem}.calendar-details{border:2px solid #b8643c40;gap:18px;scroll-margin-top:20px;display:grid}.calendar-details p{margin:0}.page-stack{gap:20px;display:grid}.analytics-page{min-width:0}.analytics-current-grid,.analytics-grid{gap:16px;display:grid}.analytics-kpi{border:1px solid var(--border);box-shadow:var(--shadow);background:linear-gradient(145deg,#fffdf9fa,#b8643c14);border-radius:22px;gap:8px;padding:20px;display:grid}.analytics-kpi span,.analytics-card small,.utilization-row small,.inventory-report small{color:var(--muted)}.analytics-kpi strong{font-size:clamp(1.55rem,4vw,2.15rem)}.analytics-filter,.analytics-presets,.analytics-custom-period,.analytics-period-heading,.analytics-period-summary,.analytics-card>header,.utilization-name{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.analytics-filter,.analytics-period-heading,.analytics-card>header{justify-content:space-between}.analytics-presets{background:#6f625717;border-radius:14px;padding:4px}.analytics-presets a{color:var(--muted);border-radius:11px;padding:9px 13px;font-weight:700}.analytics-presets a.is-active{color:var(--accent-strong);background:#fff;box-shadow:0 5px 16px #3b2c1f1a}.analytics-custom-period label{gap:4px;display:grid}.analytics-custom-period label span{color:var(--muted);font-size:.75rem}.analytics-custom-period input{border:1px solid var(--border);color:var(--foreground);background:#ffffffc7;border-radius:11px;padding:9px 11px}.analytics-period-heading h3,.analytics-card h3{margin:3px 0 0}.analytics-period-summary span{background:#b8643c14;border-radius:999px;padding:8px 12px}.analytics-period-summary strong{margin-left:5px}.analytics-card{gap:18px;min-width:0;display:grid}.analytics-card--warning{border-color:#b57f2252}.analytics-bars,.utilization-list,.analytics-simple-list,.inventory-report{gap:10px;display:grid}.analytics-bars{max-height:360px;padding-right:4px;overflow:auto}.analytics-bar-row{grid-template-columns:68px minmax(70px,1fr) minmax(82px,auto);align-items:center;gap:10px;display:grid}.analytics-bar-row time,.analytics-bar-row strong{font-size:.8rem}.analytics-bar-row strong{text-align:right}.analytics-bar-track{background:#6f62571a;border-radius:999px;height:9px;display:block;overflow:hidden}.analytics-bar-track>span{background:linear-gradient(90deg, var(--accent), #d69772);border-radius:inherit;height:100%;display:block}.analytics-status-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.analytics-status-grid>div,.inventory-report>div{background:#6f62570f;border-radius:14px;gap:5px;padding:13px;display:grid}.analytics-status-grid span,.inventory-report span{color:var(--muted);font-size:.82rem}.analytics-status-grid strong{font-size:1.35rem}.utilization-row{border-top:1px solid var(--border);grid-template-columns:minmax(140px,.8fr) minmax(100px,1.4fr) 60px;align-items:center;gap:8px 12px;padding-top:12px;display:grid}.utilization-row:first-child{border-top:0;padding-top:0}.utilization-row>small{grid-column:2/-1}.master-color{border-radius:50%;width:11px;height:11px;display:inline-block}.analytics-ranked-list{counter-reset:analytics-rank;gap:3px;margin:0;padding:0;list-style:none;display:grid}.analytics-ranked-list li,.analytics-simple-list>div{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:10px 0;display:flex}.analytics-ranked-list li:not(.muted):before{color:var(--accent-strong);content:counter(list-item, decimal-leading-zero);font-size:.72rem;font-weight:800}.analytics-ranked-list li span{flex:1}.inventory-report{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.inventory-report>div.is-low{color:#79540f;background:#b57f2221}.page-header{gap:14px;display:grid}.cards,.admin-grid{gap:16px;display:grid}.card{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:24px;padding:22px}.card ul{color:var(--muted);margin:0;padding-left:18px}.role-badge,.status-pill{border-radius:999px;justify-content:center;align-items:center;padding:6px 10px;font-size:.8rem;font-weight:700;display:inline-flex}.role-badge{background:var(--accent-soft);color:var(--accent-strong)}.role-badge--large{padding:8px 14px;font-size:1rem}.status-pill--active{background:var(--success-soft);color:var(--success)}.status-pill--inactive{color:var(--muted);background:#6f625729}.users-table{gap:14px;display:grid}.user-row{border:1px solid var(--border);border-radius:18px;gap:14px;padding:16px;display:grid}.user-row__title{flex-wrap:wrap;align-items:center;gap:10px;display:flex}@media (min-width:760px){.auth-shell{grid-template-columns:1.05fr .95fr}.admin-shell{grid-template-columns:220px minmax(0,1fr)}.admin-sidebar{min-height:100vh;position:sticky;top:0}.admin-main{padding:32px 24px 44px}.admin-grid,.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-current-grid,.analytics-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.analytics-grid--wide{grid-template-columns:minmax(0,1.7fr) minmax(280px,.8fr)}.user-row{grid-template-columns:minmax(0,1fr) auto;align-items:center}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.field--wide{grid-column:1/-1}.schedule-row{grid-template-columns:minmax(220px,1fr) auto}.break-form{grid-template-columns:repeat(3,minmax(100px,1fr)) auto}.client-search{grid-template-columns:minmax(0,1fr) minmax(320px,.8fr);align-items:end}.search-form{grid-template-columns:minmax(0,1fr) auto}.history-row{grid-template-columns:minmax(0,1fr) auto auto;align-items:center}.audit-diff,.week-calendar{grid-template-columns:repeat(2,minmax(0,1fr))}.week-day:first-child,.week-day:last-child:nth-child(odd){grid-column:1/-1}}@media (max-width:620px){.analytics-filter,.analytics-custom-period,.analytics-custom-period label,.analytics-custom-period input,.analytics-custom-period button{width:100%}.analytics-presets{justify-content:center;width:100%}.analytics-presets a{text-align:center;flex:1}.utilization-row{grid-template-columns:minmax(0,1fr) 58px}.utilization-row .analytics-bar-track,.utilization-row>small{grid-column:1/-1}}@media (min-width:1100px){.consumable-rules{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:980px){.admin-shell{grid-template-columns:280px minmax(0,1fr)}.admin-main{padding:36px 32px 48px}.page-header{grid-template-columns:minmax(0,1fr) minmax(280px,360px);align-items:start}.cards{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:1180px){.inline-form{grid-template-columns:repeat(2,minmax(0,1fr)) auto;align-items:end}.assignment-row{grid-template-columns:minmax(180px,1.4fr) repeat(3,minmax(100px,.7fr)) auto auto;align-items:center}.schedule-form{grid-template-columns:repeat(3,minmax(120px,1fr))}.schedule-comment{grid-column:span 2}}.booking-shell{--booking-ink:#2c211d;--booking-cream:#fbf5ee;color:var(--booking-ink);background:#f4eee7;min-height:100vh}.booking-hero{color:#fffaf5;background:radial-gradient(circle at 86% 14%,#dd996f38,#0000 30%),radial-gradient(circle at 10% 95%,#894e373d,#0000 36%),#2d231f;gap:30px;padding:22px max(20px,50vw - 560px) 48px;display:grid;position:relative;overflow:hidden}.booking-hero:after{content:"";border:1px solid #ffffff1a;border-radius:50%;width:260px;height:260px;position:absolute;top:55px;right:-130px}.booking-brand{z-index:1;align-items:center;gap:11px;display:flex;position:relative}.booking-brand>span{background:#cb7c50;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;font-family:Georgia,serif;font-size:1.25rem;display:flex}.booking-brand div,.booking-hero__copy,.booking-contact{gap:3px;display:grid}.booking-brand small,.booking-contact,.booking-hero__copy>p:last-child{color:#fffaf5ad}.booking-hero__copy{z-index:1;gap:13px;max-width:680px;position:relative}.booking-hero__copy .eyebrow{color:#e7ad87}.booking-hero__copy h1{letter-spacing:-.04em;max-width:800px;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.25rem,10vw,4.8rem);font-weight:400;line-height:.98}.booking-hero__copy>p:last-child{max-width:560px;margin:0;font-size:1rem;line-height:1.6}.booking-contact{z-index:1;font-size:.88rem;position:relative}.booking-contact a{color:#f3c1a0;font-weight:700}.booking-content{z-index:2;max-width:800px;margin:-22px auto 0;padding:0 14px 36px;position:relative}.booking-form{gap:14px;display:grid}.booking-step,.booking-closed,.booking-success{background:#fffdf9fa;border:1px solid #4830241a;border-radius:22px;padding:20px;box-shadow:0 18px 50px #422b1f14}.booking-step__header{grid-template-columns:34px minmax(0,1fr);align-items:start;gap:12px;margin-bottom:20px;display:grid}.booking-step__header>span{color:#fff8f2;background:#2d231f;border-radius:50%;justify-content:center;align-items:center;height:34px;font-size:.8rem;font-weight:800;display:flex}.booking-step__header h2,.booking-step__header p,.booking-category h3{margin:0}.booking-step__header h2{font-family:Georgia,Times New Roman,serif;font-size:1.45rem;font-weight:500}.booking-step__header p{color:#786a62;margin-top:4px;font-size:.84rem;line-height:1.45}.booking-categories,.booking-category,.booking-services,.booking-master-options,.booking-fields{gap:11px;display:grid}.booking-category+.booking-category{border-top:1px solid #4830241a;margin-top:6px;padding-top:17px}.booking-category h3{color:#8d4f34;letter-spacing:.09em;text-transform:uppercase;font-size:.75rem}.booking-service,.booking-master{cursor:pointer;border:1px solid #4830241f;border-radius:16px;align-items:center;gap:11px;padding:13px;transition:border-color .15s,background-color .15s,transform .15s;display:grid}.booking-service{grid-template-columns:23px minmax(0,1fr);position:relative}.booking-service:hover,.booking-master:hover{border-color:#b8643c66;transform:translateY(-1px)}:is(.booking-service:has(input:checked),.booking-master:has(input:checked)){background:#fff5ec;border-color:#bd7048}.booking-service input,.booking-master input,.booking-slot input{opacity:0;width:1px;height:1px;position:absolute}.booking-service__check{color:#0000;border:1px solid #4830243d;border-radius:7px;justify-content:center;align-items:center;height:23px;font-size:.75rem;display:flex}.booking-service input:focus-visible+.booking-service__check,.booking-master input:focus-visible+.booking-master__avatar,.booking-slot input:focus-visible+span{outline-offset:3px;outline:3px solid #b8643c59}.booking-service input:checked+.booking-service__check{color:#fff;background:#a95634;border-color:#a95634}.booking-service>span:last-child,.booking-master>span:last-child{gap:4px;min-width:0;display:grid}.booking-service small,.booking-master small{color:#786a62;line-height:1.35}.booking-master{grid-template-columns:42px minmax(0,1fr);position:relative}.booking-master__avatar{color:#fff;background:#8f634e;border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;height:42px;font-family:Georgia,serif;font-size:1.05rem;display:flex;box-shadow:0 0 0 1px #48302421}.booking-date-row{align-items:end;gap:10px;display:grid}.booking-date-row label,.booking-fields label{gap:7px;display:grid}.booking-date-row label>span,.booking-fields label>span{color:#665850;font-size:.84rem;font-weight:700}.booking-date-row input,.booking-fields input,.booking-fields textarea{color:var(--booking-ink);background:#fff;border:1px solid #48302429;border-radius:13px;width:100%;min-width:0;padding:12px 13px}.booking-fields textarea{resize:vertical}.booking-fields input[aria-invalid=true]{border-color:var(--danger)}.booking-fields label>small,.booking-inline-error,.booking-submit>p{color:var(--danger);font-size:.82rem}.booking-fields em{color:#94877f;font-size:.75rem;font-style:normal;font-weight:400}.booking-verification{background:#f3ebe4;border:1px solid #4830241f;border-radius:15px;align-items:center;gap:12px;padding:14px;display:grid}.booking-verification>div:first-child{gap:4px;display:grid}.booking-verification small{color:#786a62;line-height:1.4}.booking-verification button,.booking-verification a{color:#fff;cursor:pointer;background:#2d6fa3;border:0;border-radius:12px;justify-content:center;padding:11px 14px;font-weight:800;display:inline-flex}.booking-verification button:disabled{cursor:not-allowed;opacity:.5}.booking-verification--verified{background:#edf7f1;border-color:#2d7a5447}.booking-verification--verified strong{color:var(--success)}.booking-verification__actions{gap:8px;display:grid}.booking-verification__actions button{color:#493a32;background:#e4d8ce}.booking-verification__check{background:var(--success);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:38px;height:38px;font-weight:900;display:flex}.booking-secondary-button,.booking-submit button,.booking-closed a{cursor:pointer;border:0;border-radius:13px;justify-content:center;padding:13px 16px;font-weight:800}.booking-secondary-button{color:#57483f;background:#eee4da}.booking-secondary-button:disabled,.booking-submit button:disabled{cursor:not-allowed;opacity:.5}.booking-slots{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:16px;display:grid}.booking-slot{cursor:pointer;position:relative}.booking-slot>span{text-align:center;background:#fff;border:1px solid #48302424;border-radius:12px;padding:11px 5px 18px;font-weight:800;display:block}.booking-slot>small{color:#8e8179;text-align:center;font-size:.64rem;position:absolute;bottom:5px;left:0;right:0}.booking-slot:has(input:checked)>span{color:#fff;background:#a95634;border-color:#a95634}.booking-slot:has(input:checked)>small{color:#ffffffbd}.booking-selection{background:#f2e8df;border-radius:13px;flex-wrap:wrap;justify-content:space-between;gap:8px;margin-top:13px;padding:12px 13px;display:flex}.booking-honeypot{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.booking-submit{color:#fff;z-index:8;background:#2d231ff7;border-radius:18px;gap:12px;padding:14px;display:grid;position:static;box-shadow:0 18px 40px #2d231f40}.booking-submit>div{gap:3px;display:grid}.booking-submit small{color:#fff9;line-height:1.35}.booking-submit button,.booking-closed a{color:#fff;background:#c46f45}.booking-submit>p{grid-column:1/-1;margin:0}.booking-closed,.booking-success{text-align:center;justify-items:center;gap:13px;padding:42px 24px;display:grid}.booking-closed>span,.booking-success__icon{color:#9c5232;background:#f0dfd3;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;font-size:1.6rem;display:flex}.booking-closed h2,.booking-closed p,.booking-success h2,.booking-success p{margin:0}.booking-closed h2,.booking-success h2{font-family:Georgia,Times New Roman,serif;font-size:1.75rem;font-weight:500}.booking-closed p,.booking-success>p:last-of-type{color:#786a62;line-height:1.55}.booking-success__summary{background:#f5ebe3;border-radius:15px;gap:5px;width:min(100%,420px);margin-top:5px;padding:15px;display:grid}.booking-page-footer{color:#786a62;flex-wrap:wrap;justify-content:space-between;gap:8px 24px;max-width:800px;margin:0 auto;padding:0 20px 30px;font-size:.76rem;display:flex}@media (min-width:620px){.booking-hero{padding-bottom:68px}.booking-content{margin-top:-34px;padding-left:20px;padding-right:20px}.booking-step{padding:26px}.booking-services,.booking-master-options,.booking-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-field--wide{grid-column:1/-1}.booking-date-row{grid-template-columns:minmax(0,1fr) auto}.booking-slots{grid-template-columns:repeat(5,minmax(0,1fr))}.booking-submit{grid-template-columns:minmax(0,1fr) auto;align-items:center;padding:15px 18px}.booking-verification{grid-template-columns:minmax(0,1fr) auto}.booking-verification__actions{grid-template-columns:repeat(2,auto)}}@media (min-width:900px){.booking-hero__copy h1{max-width:760px}.booking-hero{gap:42px}}@media (prefers-reduced-motion:reduce){.booking-service,.booking-master{transition:none}}
