.booking-root{--booking-radius:8px;--booking-space-lg:20px;--booking-bg:var(--bg);--booking-surface:var(--surface);--booking-tint:var(--surface-alt);--booking-text:var(--text);--booking-muted:var(--muted);--booking-line:var(--border);--booking-accent:var(--booking-shop-light,var(--accent));--booking-on-accent:var(--booking-shop-on-light,var(--accent-contrast));--booking-selection:var(--booking-shop-light,var(--accent));--booking-on-selection:var(--booking-shop-on-light,var(--accent-contrast));--booking-error:var(--danger,#8c302a);--booking-error-bg:#fff1ed;--booking-on-error:#fff;background:var(--booking-bg);min-height:100svh;color:var(--booking-text);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;flex-direction:column;font-size:15px;line-height:1.5;display:flex}.booking-root *{box-sizing:border-box}.booking-root :where(h1,h2,h3,p,dl,dd){margin:0}.booking-root :where(h1,h2,h3){font-family:var(--font-body);letter-spacing:-.025em;line-height:1.25}.booking-root h1{font-size:clamp(26px,4vw,32px);font-weight:650}.booking-root h2{font-size:22px;font-weight:650}.booking-root :where(button,input,select){font:inherit}.booking-root :where(button,a,input,select){-webkit-tap-highlight-color:transparent}.booking-root :where(a){color:inherit;text-decoration:none}.booking-root :where(button){cursor:pointer}.booking-root :where(button:disabled){cursor:not-allowed;opacity:.45}.booking-root :where(button,a,input,select):focus-visible{outline:3px solid var(--booking-accent);outline-offset:4px}.booking-root :where(input,select){min-width:0;max-width:100%}.booking-header{border-bottom:1px solid var(--booking-line);flex-shrink:0;justify-content:space-between;align-items:center;gap:20px;width:min(1120px,100% - 64px);min-height:76px;margin:auto;display:flex}.booking-brand{font-family:var(--font-body);letter-spacing:-.025em;align-items:center;gap:11px;min-width:0;font-size:17px;font-weight:650;display:flex}.booking-brand-icon{border:1px solid var(--booking-line);border-radius:50%;flex-shrink:0;place-items:center;width:39px;height:39px;display:grid}.booking-brand-logo{border:1px solid var(--booking-line);background:#fff;border-radius:8px;flex-shrink:0;place-items:center;width:44px;height:44px;padding:3px;display:grid;overflow:hidden}.booking-brand-logo img{object-fit:contain;width:100%;height:100%;display:block}.booking-demo{text-transform:uppercase;letter-spacing:.07em;border:1px solid var(--booking-line);border-radius:var(--booking-radius);white-space:nowrap;color:var(--booking-muted);padding:5px 9px;font-size:11px;font-weight:650}.booking-back-wrap{width:min(1120px,100% - 64px);margin:22px auto 0}.booking-back{color:var(--booking-muted);align-items:center;gap:8px;min-height:44px;font-size:13px;display:inline-flex}.booking-footer{border-top:1px solid var(--booking-line);width:min(1120px,100% - 64px);color:var(--booking-muted);justify-content:space-between;gap:16px;margin:auto auto 0;padding:20px 0 24px;font-size:12px;display:flex}.booking-narrow{width:min(640px,100% - 40px);margin:0 auto}.booking-state{text-align:center;flex-direction:column;flex:1;align-items:center;gap:20px;padding:56px 0 72px;display:flex}.booking-state h1{font-size:clamp(26px,4vw,32px)}.booking-state p{color:var(--booking-muted);max-width:430px}.booking-button{border-radius:var(--booking-radius);background:var(--booking-accent);white-space:normal;text-align:center;border:1px solid #0000;justify-content:center;align-items:center;gap:11px;min-height:48px;padding:12px 23px;font-size:14px;font-weight:600;line-height:1.35;transition:background .15s,transform .15s;display:inline-flex;color:var(--booking-on-accent)!important}.booking-button:hover:not(:disabled){filter:brightness(1.08)}.booking-button:active:not(:disabled){transform:translateY(1px)}.booking-button-large{min-height:48px;padding:12px 20px}.booking-button-secondary{border-color:var(--booking-line);background:0 0;color:var(--booking-text)!important}.booking-button-secondary:hover:not(:disabled){background:var(--booking-tint)}.booking-button-danger{background:var(--booking-error);color:var(--booking-on-error)!important}.booking-full-width{width:100%}.booking-text-link{color:var(--booking-accent);text-underline-offset:4px;background:0 0;border:0;border-radius:0;align-items:center;gap:6px;min-height:44px;padding:4px 0;font-size:13px;font-weight:600;line-height:1.5;text-decoration:underline;display:inline-flex}.booking-icon-button{border:1px solid var(--booking-line);width:44px;min-height:44px;color:var(--booking-text);border-radius:var(--booking-radius);background:0 0;place-items:center;display:inline-grid}.booking-icon-button:hover:not(:disabled){background:var(--booking-tint)}.booking-eyebrow{text-transform:uppercase;letter-spacing:.11em;color:var(--booking-muted);font-size:11px;font-weight:650}.booking-muted{color:var(--booking-muted)}.booking-small{font-size:12px;line-height:1.55}.booking-centered{text-align:center}.booking-lead{color:var(--booking-muted);font-size:15px}.booking-site{width:min(1120px,100% - 64px);margin:0 auto}.booking-shop-hero{padding:40px 0 44px;display:block}.booking-shop-intro h1{letter-spacing:-.035em;margin:12px 0 16px;font-size:clamp(30px,4vw,44px);font-weight:650;line-height:1.15}.booking-shop-description{color:var(--booking-muted);max-width:600px;font-size:15px;line-height:1.6;margin-bottom:24px!important}.booking-location-link{align-items:center;gap:8px;margin-top:20px;font-size:12px;line-height:1.5;display:flex;color:var(--booking-muted)!important}.booking-location-link svg{flex-shrink:0}.booking-shop-section{border-top:1px solid var(--booking-line);padding:32px 0 36px}.booking-section-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px;display:flex}.booking-section-heading h2,.booking-shop-section>h2{font-size:23px;font-weight:650}.booking-section-heading>span{color:var(--booking-muted);font-size:13px}.booking-service-list{border-top:1px solid var(--booking-line)}.booking-service-row{border-bottom:1px solid var(--booking-line);justify-content:space-between;align-items:center;gap:20px;padding:18px 0;transition:background .15s;display:flex}.booking-service-row:hover{background:var(--booking-tint)}.booking-service-preview:hover{background:0 0}.booking-preview-note{color:var(--booking-muted);max-width:460px;font-size:13px;margin-top:12px!important}.booking-service-row h3{margin-bottom:5px;font-size:16px;font-weight:650}.booking-service-row p{color:var(--booking-muted);max-width:620px;margin-bottom:10px;font-size:14px}.booking-duration{color:var(--booking-muted);align-items:center;gap:6px;font-size:12px;display:inline-flex}.booking-service-end{flex-shrink:0;align-items:center;gap:32px;display:flex}.booking-service-end strong{font-size:17px;font-weight:550}.booking-team-grid,.booking-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.booking-gallery-photo{min-width:0;margin:0}.booking-gallery-frame{aspect-ratio:4/3;border:1px solid var(--booking-line);border-radius:var(--booking-radius);background:var(--booking-tint);place-items:center;display:grid;overflow:hidden}.booking-gallery-frame>img{object-fit:contain;width:100%;height:100%;min-height:0;display:block}.booking-photo-unavailable{min-height:100%;color:var(--booking-muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:20px;font-size:13px;display:flex}@media (max-width:760px){.booking-gallery{grid-template-columns:1fr;gap:16px}.booking-brand-logo{width:39px;height:39px}}.booking-team-member{border-top:1px solid var(--booking-line);padding:16px 0}.booking-team-member h3,.booking-team-member h4{margin-bottom:9px;font-size:18px;font-weight:600}.booking-studio-teams{gap:28px;display:grid}.booking-studio-name{margin-bottom:12px;font-size:17px}.booking-studio-visits{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px;margin-bottom:24px;display:grid}.booking-studio-visits article{border-top:1px solid var(--booking-line);min-width:0;padding-top:20px}.booking-studio-visits h3{margin-bottom:16px;font-size:20px}.booking-studio-visits .booking-hours{margin:20px 0}.booking-studio-visits .booking-location-link{overflow-wrap:anywhere;min-height:44px;margin:0}.booking-studio-visits .booking-contact-links a{min-height:44px}@media (max-width:600px){.booking-studio-visits{grid-template-columns:1fr;gap:28px}}.booking-visit-grid{grid-template-columns:1fr 1fr;gap:40px;display:grid}.booking-visit-grid h2{margin-bottom:24px;font-size:23px;font-weight:650}.booking-visit-grid h3{margin-bottom:21px;font-size:17px;font-weight:600}.booking-visit-address{max-width:310px;font-size:17px;line-height:1.6;margin-bottom:20px!important}.booking-contact-links{color:var(--booking-muted);flex-direction:column;align-items:flex-start;gap:10px;font-size:14px;display:flex}.booking-contact-links :where(a,span){overflow-wrap:anywhere;align-items:center;gap:9px;min-height:32px;display:inline-flex}.booking-hours>div{justify-content:space-between;gap:20px;padding:7px 0;font-size:13px;display:flex}.booking-hours dd{color:var(--booking-muted)}.booking-visit-grid .booking-small{margin-top:14px}.booking-returning-note{border-bottom:1px solid var(--booking-line);color:var(--booking-muted);margin-bottom:22px;padding:0 0 20px;font-size:13px;line-height:1.6}.booking-returning-note .booking-text-link{margin-top:6px}.booking-enquiry{grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:70px;display:grid}.booking-enquiry-intro h2{margin-bottom:16px;font-size:23px;font-weight:650}.booking-enquiry-intro p{color:var(--booking-muted);overflow-wrap:anywhere;max-width:360px;font-size:14px;line-height:1.65}.booking-enquiry-fields{border:0;min-width:0;margin:0;padding:0}.booking-enquiry-legend{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.booking-enquiry .booking-fields>.booking-enquiry-wide{grid-column:1/-1}.booking-enquiry .booking-fields :where(select,textarea){font:inherit;border:1px solid var(--booking-line);border-radius:var(--booking-radius);background:var(--booking-surface);width:100%;min-height:48px;color:var(--booking-text);padding:11px 13px;font-size:16px}.booking-enquiry textarea{resize:vertical;max-width:100%;line-height:1.5}.booking-enquiry textarea:focus-visible{outline:3px solid var(--booking-accent);outline-offset:4px}.booking-enquiry .booking-consents{margin-top:24px}.booking-enquiry .booking-consents span{overflow-wrap:anywhere}.booking-enquiry-note{color:var(--booking-muted);overflow-wrap:anywhere;font-size:12px;line-height:1.65;margin:21px 0 19px!important}.booking-enquiry-received{border-top:1px solid var(--booking-line);color:var(--booking-accent);align-items:flex-start;gap:13px;padding:24px 0;display:flex}.booking-enquiry-received svg{flex-shrink:0}.booking-enquiry-received h3{margin-bottom:10px;font-size:21px}.booking-enquiry-received p,.booking-enquiry-unavailable p{color:var(--booking-muted);font-size:14px;line-height:1.65}.booking-enquiry-form,.booking-enquiry-unavailable{min-width:0}@media (max-width:760px){.booking-enquiry{grid-template-columns:1fr;gap:24px}.booking-enquiry-intro h2{font-size:22px}.booking-enquiry .booking-button{width:100%}}.booking-flow{flex:1;padding:28px 0 48px}.booking-progress{justify-content:space-between;gap:0;margin-bottom:24px;display:flex}.booking-progress button{color:var(--booking-muted);background:0 0;border:0;align-items:center;gap:8px;min-height:44px;padding:7px 3px;font-size:12px;display:inline-flex}.booking-progress button:disabled{opacity:1;cursor:default}.booking-progress button>span{border:1px solid var(--booking-line);border-radius:50%;place-items:center;width:23px;height:23px;font-size:10px;display:grid}.booking-progress .booking-progress-active{color:var(--booking-text);font-weight:650}.booking-progress .booking-progress-active>span{color:var(--booking-on-accent);background:var(--booking-accent);border-color:var(--booking-accent)}.booking-flow-heading{margin-bottom:24px}.booking-flow-heading h1{letter-spacing:-.035em;margin-bottom:0;font-size:clamp(26px,4vw,32px);font-weight:650}.booking-flow-heading h1:focus{outline:none}.booking-flow-heading p{color:var(--booking-muted);font-size:14px}.booking-choice-list{border-top:1px solid var(--booking-line)}.booking-choice{border:0;border-bottom:1px solid var(--booking-line);text-align:left;width:100%;color:var(--booking-text);background:0 0;align-items:center;gap:16px;padding:16px 0;display:flex}.booking-choice:hover{background:var(--booking-tint)}.booking-choice-main{flex-direction:column;flex:1;gap:5px;min-width:0;display:flex}.booking-choice-main strong{font-size:16px;font-weight:600}.booking-choice-main>span{color:var(--booking-muted);font-size:13px;line-height:1.45}.booking-choice-main small{color:var(--booking-muted);font-size:12px}.booking-choice-price{flex-shrink:0;align-items:center;gap:12px;font-size:15px;font-weight:600;display:flex}.booking-selection-summary{border-top:1px solid var(--booking-line);border-bottom:1px solid var(--booking-line);align-items:center;gap:12px;margin-bottom:20px;padding:18px 0;display:flex}.booking-selection-summary>span{flex:1;font-size:14px;font-weight:600}.booking-selection-summary small{color:var(--booking-muted);margin-top:4px;font-size:12px;font-weight:400;display:block}.booking-selection-summary>svg{color:var(--booking-accent);flex-shrink:0}.booking-date-heading{justify-content:space-between;align-items:center;gap:14px;margin-bottom:16px;display:flex}.booking-date-heading strong{font-size:15px;font-weight:600}.booking-date-heading>div{gap:8px;display:flex}.booking-date-strip{scrollbar-width:none;grid-template-columns:repeat(7,minmax(44px,1fr));gap:6px;padding:4px 0 8px;display:grid;overflow-x:auto}.booking-date-strip::-webkit-scrollbar{display:none}.booking-date-cell{border:1px solid var(--booking-line);color:var(--booking-text);border-radius:var(--booking-radius);background:0 0;flex-direction:column;align-items:center;gap:5px;min-height:68px;padding:10px 2px;display:flex}.booking-date-cell>span{color:var(--booking-muted);font-size:11px}.booking-date-cell>strong{font-size:18px;font-weight:600;line-height:1}.booking-date-cell:hover,.booking-time:hover{background:var(--booking-tint)}.booking-date-cell.booking-selected,.booking-time.booking-selected{background:var(--booking-selection);border-color:var(--booking-accent);color:var(--booking-on-selection)}.booking-date-cell.booking-selected>span{color:var(--booking-on-selection)}.booking-date-input{color:var(--booking-muted);justify-content:space-between;align-items:center;gap:10px;margin:12px 0 20px;font-size:12px;display:flex}.booking-date-input input{border:1px solid var(--booking-line);border-radius:var(--booking-radius);background:var(--booking-surface);color:var(--booking-text);min-height:44px;padding:8px 10px;font-size:13px}.booking-slot-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.booking-slot-heading h3{font-size:16px;font-weight:600}.booking-time-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;display:grid}.booking-time{color:var(--booking-text);border:1px solid var(--booking-line);border-radius:var(--booking-radius);background:0 0;min-height:46px;padding:9px 3px;font-size:13px}.booking-time-grid.booking-time-grid-detailed{grid-template-columns:repeat(3,minmax(0,1fr))}.booking-time-grid-detailed .booking-time{overflow-wrap:anywhere;flex-direction:column;justify-content:center;align-items:center;gap:5px;min-height:78px;padding:10px 8px;display:flex}.booking-slot-barber{font-size:11px;line-height:1.4}.booking-time small{font-size:10px;line-height:1.4}.booking-selected-slot{color:var(--booking-accent);padding:13px 0;line-height:1.65}@media (max-width:760px){.booking-time-grid.booking-time-grid-detailed{grid-template-columns:repeat(2,minmax(0,1fr))}}.booking-availability-state{min-height:100px;color:var(--booking-muted);justify-content:center;align-items:center;gap:12px;font-size:13px;display:flex}.booking-step-actions{justify-content:flex-end;margin-top:24px;display:flex}.booking-step-actions .booking-button{min-width:180px}.booking-previous{min-height:44px;margin-top:30px}.booking-fields{grid-template-columns:1fr 1fr;gap:16px;display:grid}.booking-fields>label{flex-direction:column;gap:8px;min-width:0;font-size:13px;font-weight:550;display:flex}.booking-fields>label:first-child{grid-column:1/-1}.booking-fields :where(input),.booking-copy-row input,.booking-select-label select{border:1px solid var(--booking-line);border-radius:var(--booking-radius);background:var(--booking-surface);width:100%;min-height:48px;color:var(--booking-text);padding:11px 13px;transition:border-color .15s}.booking-fields input,.booking-select-label select{font-size:16px}.booking-fields small{color:var(--booking-muted);font-size:11px;font-weight:400}.booking-consents{border:0;border-top:1px solid var(--booking-line);border-bottom:1px solid var(--booking-line);margin:24px 0 0;padding:16px 0}.booking-consents legend{float:left;width:100%;margin-bottom:16px;font-size:13px;font-weight:600}.booking-consents label,.booking-checkbox{clear:both;cursor:pointer;align-items:flex-start;gap:10px;margin:0 0 13px;font-size:12px;line-height:1.6;display:flex}.booking-root input[type=checkbox]{width:18px;height:18px;accent-color:var(--booking-accent);flex-shrink:0;margin:1px 0 0}.booking-price-summary{border-bottom:1px solid var(--booking-line);justify-content:space-between;align-items:center;gap:20px;margin-top:28px;padding-bottom:20px;font-size:14px;display:flex}.booking-price-summary strong{font-size:21px;font-weight:600}.booking-quote{border-bottom:1px solid var(--booking-line);margin-top:28px;padding:0 0 20px}.booking-quote .booking-price-summary{color:var(--booking-muted);border:0;margin:0;padding:0 0 13px;font-size:13px}.booking-discount-row{color:var(--booking-accent);justify-content:space-between;gap:20px;margin-bottom:13px;font-size:13px;display:flex}.booking-total-row{border-top:1px solid var(--booking-line);justify-content:space-between;align-items:center;gap:20px;padding-top:10px;font-size:14px;display:flex}.booking-total-row strong{font-size:22px;font-weight:650}.booking-quote>.booking-small{margin-top:9px}.booking-card-book{margin-top:28px}.booking-waitlist{border-top:1px solid var(--booking-line);color:var(--booking-muted);margin-top:25px;padding-top:18px;font-size:13px}.booking-waitlist .booking-section-heading{color:var(--booking-text);margin-bottom:12px}.booking-waitlist .booking-fields{color:var(--booking-text);margin:22px 0}.booking-waitlist-success{background:var(--booking-tint);border-radius:var(--booking-radius);color:var(--booking-accent);align-items:flex-start;gap:10px;margin-top:23px;padding:18px 16px;font-size:13px;display:flex}.booking-waitlist-success svg{flex-shrink:0}.booking-waitlist-success p{color:var(--booking-muted);margin-top:5px;font-size:12px;line-height:1.6}.booking-referral-price-note{color:var(--booking-accent);font-size:12px;line-height:1.6;margin-top:12px!important}.booking-policy{color:var(--booking-muted);margin:21px 0 24px;font-size:12px}.booking-policy p{margin-bottom:14px;line-height:1.65}.booking-policy .booking-checkbox{color:var(--booking-text)}.booking-details-form>.booking-small{margin-top:16px}.booking-inline-error{background:var(--booking-error-bg);color:var(--booking-error);border-radius:var(--booking-radius);overflow-wrap:anywhere;border:1px solid;margin:18px 0;padding:15px 17px;font-size:13px;line-height:1.6}.booking-inline-error .booking-text-link{color:var(--booking-error);margin-top:5px}.booking-empty{text-align:left;border-top:1px solid var(--booking-line);border-bottom:1px solid var(--booking-line);color:var(--booking-muted);padding:24px 0;font-size:14px}.booking-empty h3{color:var(--booking-text);margin-bottom:8px;font-size:17px}.booking-next-available{flex-direction:column;align-items:flex-start;gap:12px;margin-top:18px;display:flex}.booking-next-available .booking-button{white-space:normal;text-align:center;max-width:100%;min-height:44px}.booking-next-available .booking-inline-error{margin:0}.booking-confirmation{text-align:center;flex:1;padding:32px 0 48px}.booking-confirm-icon{background:var(--booking-tint);width:48px;height:48px;color:var(--booking-accent);border-radius:50%;place-items:center;margin:0 auto 23px;display:grid}.booking-confirmation>h1{letter-spacing:-.035em;margin-bottom:11px;font-size:32px;font-weight:650}.booking-confirmation .booking-appointment-summary{text-align:left;margin-top:24px}.booking-confirmation>.booking-small{margin:15px 0 24px}.booking-appointment-summary{background:var(--booking-surface);border:1px solid var(--booking-line);border-radius:var(--booking-radius);margin-bottom:20px;padding:20px}.booking-appointment-summary>h2{letter-spacing:-.035em;margin:8px 0 18px;font-size:30px;font-weight:650}.booking-appointment-summary dl>div{border-bottom:1px solid var(--booking-line);justify-content:space-between;gap:22px;padding:10px 0;font-size:13px;display:flex}.booking-appointment-summary dl>div:last-child{border-bottom:0}.booking-appointment-summary dt{color:var(--booking-muted);flex-shrink:0}.booking-appointment-summary dd{text-align:right;overflow-wrap:anywhere;font-weight:500}.booking-manage{flex:1;width:min(680px,100% - 40px);margin:0 auto;padding:28px 0 48px}.booking-manage-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.booking-manage-heading h1{letter-spacing:-.035em;margin-top:0;font-size:30px;font-weight:650}.booking-status{border-radius:var(--booking-radius);background:var(--booking-tint);color:var(--booking-accent);white-space:nowrap;align-items:center;gap:5px;padding:6px 10px;font-size:11px;font-weight:600;display:inline-flex}.booking-status-muted{color:var(--booking-muted);border:1px solid var(--booking-line);background:0 0}.booking-manage-actions{flex-wrap:wrap;gap:10px;margin-top:24px;display:flex}.booking-manage-actions .booking-button{flex:1}.booking-rebook{min-height:36px;margin-top:22px}.booking-action-panel{border-bottom:1px solid var(--booking-line);margin-bottom:24px;padding:25px 0 30px}.booking-action-panel h2{margin-bottom:12px;font-size:21px;font-weight:650}.booking-action-panel>p{color:var(--booking-muted);font-size:14px}.booking-action-panel .booking-section-heading{margin-bottom:20px}.booking-action-panel .booking-section-heading h2{margin-bottom:0}.booking-select-label{flex-direction:column;gap:8px;margin-bottom:25px;font-size:13px;display:flex}.booking-action-panel>.booking-button{margin-top:25px}.booking-policy-note{color:var(--booking-muted);font-size:12px;line-height:1.65;margin:19px 0 32px!important}.booking-policy-note a{text-underline-offset:3px;text-decoration:underline}.booking-success{border-radius:var(--booking-radius);background:var(--booking-tint);color:var(--booking-accent);align-items:center;gap:9px;padding:14px 16px;font-size:13px;display:flex;margin-bottom:20px!important}.booking-loyalty-locked{border-top:1px solid var(--booking-line);border-bottom:1px solid var(--booking-line);color:var(--booking-accent);gap:15px;padding:25px 0;display:flex}.booking-loyalty-locked>svg{flex-shrink:0}.booking-loyalty-locked h2{color:var(--booking-text);margin-bottom:9px;font-size:18px;font-weight:550}.booking-loyalty-locked p{color:var(--booking-muted);font-size:13px;line-height:1.6}.booking-loyalty-card{border-radius:var(--booking-radius);background:var(--booking-accent);color:var(--booking-on-accent);margin-bottom:25px;padding:22px}.booking-loyalty-header{justify-content:space-between;align-items:center;gap:18px;display:flex}.booking-loyalty-header .booking-eyebrow{color:inherit;opacity:.85}.booking-loyalty-header h2{margin-top:0;font-size:22px;font-weight:650}.booking-stamp-count{font-size:13px;margin:28px 0 16px!important}.booking-stamp-count strong{letter-spacing:-.04em;font-size:32px;font-weight:550}.booking-stamps{flex-wrap:wrap;gap:10px;margin-bottom:23px;display:flex}.booking-stamps>span{border:1px solid color-mix(in srgb,currentColor 60%,transparent);border-radius:50%;place-items:center;width:42px;height:42px;display:grid}.booking-stamps>span>span{opacity:.5;background:currentColor;border-radius:50%;width:4px;height:4px}.booking-stamps .booking-stamp-earned{background:var(--booking-on-accent);color:var(--booking-accent);border-color:var(--booking-on-accent)}.booking-loyalty-reward{font-size:15px;font-weight:550;margin-bottom:10px!important}.booking-loyalty-card>.booking-small{color:inherit;opacity:.9;max-width:440px}.booking-referral-card{border-top:1px solid var(--booking-line);padding:20px 0 13px}.booking-referral-card>svg{color:var(--booking-accent);margin-bottom:16px}.booking-referral-card h2{margin-bottom:12px;font-size:22px;font-weight:650}.booking-referral-card>p{color:var(--booking-muted);margin-bottom:17px;font-size:13px;line-height:1.65}.booking-referral-card>p.booking-referral-offer{color:var(--booking-accent);font-weight:550}.booking-copy-row{gap:8px;margin:8px 0 10px;display:flex}.booking-copy-row input{flex:1;min-width:0;font-size:12px}.booking-copy-row .booking-button{flex-shrink:0;padding:10px 17px}.booking-secure-note{color:var(--booking-muted);justify-content:center;align-items:center;gap:6px;font-size:11px;display:flex;margin-top:37px!important}.booking-root .booking-consents label,.booking-root .booking-checkbox{align-items:center;min-height:44px}.booking-spinner{border:2px solid;border-right-color:#0000;border-radius:50%;flex-shrink:0;width:17px;height:17px;animation:.8s linear infinite booking-spin;display:inline-block}@keyframes booking-spin{to{transform:rotate(360deg)}}[data-theme=dark] .booking-root,.dark .booking-root{--booking-bg:var(--bg);--booking-surface:var(--surface);--booking-tint:var(--surface-alt);--booking-text:var(--text);--booking-muted:var(--muted);--booking-line:var(--border);--booking-accent:var(--booking-shop-dark,var(--accent));--booking-on-accent:var(--booking-shop-on-dark,var(--accent-contrast));--booking-selection:var(--booking-shop-dark,var(--accent));--booking-on-selection:var(--booking-shop-on-dark,var(--accent-contrast));--booking-error:var(--danger,#ffc0b6);--booking-error-bg:#3c211c;--booking-on-error:#242321;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]) .booking-root{--booking-bg:var(--bg);--booking-surface:var(--surface);--booking-tint:var(--surface-alt);--booking-text:var(--text);--booking-muted:var(--muted);--booking-line:var(--border);--booking-accent:var(--booking-shop-dark,var(--accent));--booking-on-accent:var(--booking-shop-on-dark,var(--accent-contrast));--booking-selection:var(--booking-shop-dark,var(--accent));--booking-on-selection:var(--booking-shop-on-dark,var(--accent-contrast));--booking-error:var(--danger,#ffc0b6);--booking-error-bg:#3c211c;--booking-on-error:#242321;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}@media (max-width:760px){.booking-header,.booking-footer,.booking-site,.booking-back-wrap{width:calc(100% - 40px)}.booking-header{min-height:68px}.booking-shop-hero{padding:28px 0 32px}.booking-shop-intro h1{max-width:640px;font-size:34px}.booking-shop-section{padding:28px 0}.booking-section-heading{align-items:flex-start;gap:13px;margin-bottom:23px}.booking-section-heading>span{text-align:right;max-width:145px;font-size:11px}.booking-section-heading h2{font-size:22px}.booking-service-end{gap:18px}.booking-team-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.booking-visit-grid{grid-template-columns:1fr;gap:35px}.booking-flow{padding-top:25px}.booking-progress{margin-bottom:31px}.booking-choice{gap:13px}.booking-choice-price{gap:10px}.booking-time-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.booking-date-strip{gap:4px}.booking-slot-heading{flex-direction:column;align-items:flex-start;gap:7px}.booking-fields{grid-template-columns:1fr}.booking-appointment-summary{padding:20px}.booking-manage{padding-top:29px}.booking-manage-heading h1{font-size:28px}.booking-loyalty-card{padding:20px}.booking-stamps{gap:8px}.booking-stamps>span{width:38px;height:38px}.booking-state{padding:48px 0 64px}.booking-secure-note{align-items:flex-start}.booking-confirmation{padding-top:28px}.booking-confirmation>h1{font-size:30px}}@media (max-width:390px){.booking-header,.booking-footer,.booking-site,.booking-back-wrap,.booking-narrow,.booking-manage{width:calc(100% - 32px)}.booking-brand{gap:8px;font-size:15px}.booking-brand-icon{width:33px;height:33px}.booking-demo{padding:4px 7px;font-size:9px}.booking-progress button{gap:5px;font-size:11px}.booking-shop-intro h1{font-size:30px}.booking-choice-main strong,.booking-choice-price{font-size:14px}.booking-date-strip{gap:4px}.booking-manage-actions{flex-direction:column}.booking-copy-row .booking-button{padding:10px 13px}.booking-manage-heading{align-items:flex-start}.booking-footer{font-size:11px}}@media (prefers-reduced-motion:reduce){.booking-root *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media (max-width:760px){.booking-stamps{grid-template-columns:repeat(4,1fr);gap:12px 8px;max-width:260px;display:grid}.booking-stamps>span{justify-self:center;width:43px;height:43px}.booking-copy-row input{font-size:16px}}.booking-root :where(h1,h2,h3),.booking-brand>span:last-child,.booking-choice-main,.booking-service-row>div{overflow-wrap:anywhere;min-width:0}.booking-progress,.booking-date-input,.booking-footer{flex-wrap:wrap}.booking-receipt{border-top:1px solid var(--booking-line);border-bottom:1px solid var(--booking-line);margin:0 0 32px;padding:26px 0}.booking-receipt .booking-section-heading{color:var(--booking-accent);margin-bottom:18px}.booking-receipt h2{color:var(--booking-text);margin-top:0;font-size:22px}.booking-receipt-shop{overflow-wrap:anywhere;flex-direction:column;gap:4px;font-size:13px;display:flex;margin-bottom:20px!important}.booking-receipt-shop span{color:var(--booking-muted)}.booking-receipt dl>div{border-bottom:1px solid var(--booking-line);justify-content:space-between;gap:18px;padding:10px 0;font-size:13px;display:flex}.booking-receipt dt{color:var(--booking-muted);flex-shrink:0}.booking-receipt dd{text-align:right;overflow-wrap:anywhere;min-width:0}.booking-receipt .booking-receipt-net{padding-top:16px;padding-bottom:16px;font-size:16px;font-weight:600}.booking-receipt .booking-receipt-net dt{color:var(--booking-text)}.booking-receipt>.booking-small{margin:17px 0 19px}.booking-offer{text-align:left;border-top:1px solid var(--booking-line);border-bottom:1px solid var(--booking-line);margin:24px 0;padding:20px 0}.booking-offer-heading{color:var(--booking-accent);justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.booking-offer h2{overflow-wrap:anywhere;margin-bottom:12px;font-size:22px;font-weight:650}.booking-offer>p{color:var(--booking-muted);font-size:14px;line-height:1.6}.booking-offer-price{align-items:center;gap:17px;margin:20px 0 10px;display:flex}.booking-offer-price strong{letter-spacing:-.04em;font-size:23px;font-weight:650}.booking-offer-price span{color:var(--booking-muted);font-size:14px}.booking-offer-actions{gap:10px;margin-top:22px;display:flex}.booking-offer-actions .booking-button{flex:1}.booking-offer-note{color:var(--booking-muted);text-align:left;padding:16px 0;line-height:1.6}.booking-offer-result{text-align:left;margin-top:25px!important}@media (max-width:390px){.booking-offer{padding:20px 0}.booking-offer-actions{flex-direction:column}.booking-offer h2{font-size:23px}}.booking-payment{text-align:left;border-top:1px solid var(--booking-line);border-bottom:1px solid var(--booking-line);margin:24px 0;padding:20px 0}.booking-payment .booking-section-heading{align-items:flex-start;margin-bottom:16px}.booking-payment h2{font-size:22px;font-weight:650}.booking-payment-test,.booking-payment-notice{background:var(--booking-tint);border-radius:var(--booking-radius);padding:12px 14px;line-height:1.6;margin-bottom:18px!important}.booking-payment dl{margin:18px 0}.booking-payment dl>div{border-bottom:1px solid var(--booking-line);justify-content:space-between;gap:20px;padding:12px 0;font-size:14px;display:flex}.booking-payment dt{color:var(--booking-muted)}.booking-payment dd{flex-shrink:0;font-weight:550}.booking-payment-policy{white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.7;margin:18px 0!important}.booking-payment-refresh{min-height:44px;margin:18px 0 12px}.booking-payment .booking-button{margin-top:18px}.booking-request-note{border-radius:var(--booking-radius);background:var(--booking-tint);color:var(--booking-text);text-align:left;padding:16px 18px;font-size:14px;line-height:1.65;margin:20px 0!important}.booking-change-request{border-top:1px solid var(--booking-line);border-bottom:1px solid var(--booking-line);margin:24px 0;padding:20px 0}.booking-change-request h2{margin:10px 0 16px;font-size:22px;line-height:1.25}.booking-change-request dl>div{border-bottom:1px solid var(--booking-line);justify-content:space-between;gap:18px;padding:10px 0;font-size:14px;display:flex}.booking-change-request dt{color:var(--booking-muted)}.booking-change-request dd{text-align:right;overflow-wrap:anywhere;min-width:0}.booking-change-request>p{line-height:1.65}.booking-change-request .booking-button{margin-top:18px}@media (max-width:390px){.booking-payment{padding:20px 0}.booking-payment h2{font-size:23px}}.booking-waitlist-permission{margin:0 0 20px;line-height:1.7}.booking-waitlist-permission small{margin-top:5px;font-size:12px;display:block}.booking-waitlist-offer h1{letter-spacing:-.035em;margin:15px 0;font-size:30px;line-height:1.15}.booking-waitlist-offer .booking-appointment-summary{margin:25px 0}.booking-waitlist-offer .booking-manage-actions{flex-wrap:wrap;margin-top:23px}.booking-waitlist-withdraw{text-align:left;margin-top:28px;line-height:1.7}.booking-waitlist-offer .booking-secure-note{margin-top:30px}.booking-waitlist-offer .booking-confirmation-mark{margin-top:25px}@media (max-width:600px){.booking-waitlist-offer h1{font-size:28px}.booking-waitlist-offer .booking-manage-actions{flex-direction:column;align-items:stretch}}.booking-credit-selection{border:0;border-top:1px solid var(--booking-line);border-bottom:1px solid var(--booking-line);min-width:0;margin:27px 0 0;padding:20px 0 18px}.booking-credit-selection legend{float:left;width:100%;margin-bottom:12px;font-size:13px;font-weight:600}.booking-credit-amount{clear:both;color:var(--booking-accent);font-size:19px;font-weight:600;margin:0 0 12px!important}.booking-credit-selection .booking-checkbox{margin-bottom:8px}.booking-credit-selection .booking-checkbox span{overflow-wrap:anywhere}.booking-credit-help{color:var(--booking-accent);overflow-wrap:anywhere;font-size:13px;line-height:1.65;margin:14px 0!important}.booking-credit-card{border-top:1px solid var(--booking-line);border-bottom:1px solid var(--booking-line);margin:24px 0;padding:20px 0}.booking-credit-card .booking-section-heading{color:var(--booking-accent);margin-bottom:19px}.booking-credit-card h2{color:var(--booking-text);margin-top:7px;font-size:23px;font-weight:650}.booking-credit-balances{margin-bottom:17px!important}.booking-credit-balances>div{justify-content:space-between;align-items:baseline;gap:20px;padding:9px 0;font-size:13px;display:flex}.booking-credit-balances dt{color:var(--booking-muted)}.booking-credit-balances dd{text-align:right;flex-shrink:0;font-size:21px;font-weight:650}.booking-credit-balances>div+div dd{font-size:16px}.booking-credit-book{min-height:44px;margin-top:10px}.booking-credit-conversion{border-top:1px solid var(--booking-line);margin-top:19px;padding:17px 0}.booking-credit-conversion .booking-button{margin-top:13px}.booking-credit-history{border-top:1px solid var(--booking-line);margin-top:22px}.booking-credit-history summary{cursor:pointer;min-height:44px;padding:13px 0;font-size:13px;font-weight:600}.booking-credit-history summary:focus-visible{outline:3px solid var(--booking-accent);outline-offset:4px}.booking-credit-history ul{margin:0;padding:0;list-style:none}.booking-credit-history li{border-top:1px solid var(--booking-line);justify-content:space-between;align-items:flex-start;gap:18px;padding:15px 0;font-size:13px;display:flex}.booking-credit-history li>div{overflow-wrap:anywhere;min-width:0}.booking-credit-history li strong{font-weight:550}.booking-credit-history li p,.booking-credit-history time{color:var(--booking-muted);font-size:12px;line-height:1.6;display:block;margin-top:5px!important}.booking-credit-history li>span{flex-shrink:0;font-weight:550}@media (max-width:390px){.booking-credit-card h2{font-size:24px}.booking-credit-conversion .booking-button{width:100%}.booking-credit-history li{gap:12px}}.booking-credit-recovery-actions{flex-wrap:wrap;gap:8px 22px;margin-top:5px;display:flex}.booking-credit-recovery-actions .booking-text-link{min-height:44px;margin-top:0}@media (max-width:600px){.booking-deposit-heading{flex-direction:column;align-items:flex-start;gap:14px}.booking-deposit-heading>div{width:100%}.booking-deposit-heading .booking-status{white-space:normal;max-width:100%}}.booking-earned-reward{border-top:1px solid var(--booking-line);flex-direction:column;align-items:flex-start;gap:10px;padding:18px 0;display:flex}.booking-earned-reward>strong{font-size:15px;font-weight:550;line-height:1.6}.booking-earned-reward .booking-button{white-space:normal;text-align:left}.booking-earned-rewards{margin-top:24px}.booking-earned-rewards>h3{margin-bottom:12px;font-size:18px;font-weight:550}.booking-reward-label{clear:both;flex-direction:column;gap:10px;width:100%;min-width:0;font-size:14px;display:flex}.booking-reward-label select{border:1px solid var(--booking-line);background:var(--booking-surface);width:100%;min-width:0;min-height:48px;color:var(--booking-text);font:inherit;border-radius:8px;padding:12px}@media (max-width:600px){.booking-reward-label select{font-size:16px}.booking-earned-reward .booking-button{text-align:center;justify-content:center;width:100%}}.booking-extras{border:0;border-bottom:1px solid var(--booking-line);min-width:0;margin:0 0 28px;padding:0 0 20px}.booking-extras legend{margin-bottom:12px;font-size:15px;font-weight:600}.booking-extras-disclosure{border-bottom:1px solid var(--booking-line);margin:0 0 28px}.booking-extras-disclosure>summary{cursor:pointer;min-height:44px;padding:12px 0;font-size:15px;font-weight:600}.booking-extras-disclosure>summary span{float:right;color:var(--booking-muted);font-size:13px;font-weight:400}.booking-extras-disclosure>summary:focus-visible{outline:3px solid var(--booking-accent);outline-offset:4px}.booking-extras-disclosure .booking-extras{border-bottom:0;margin:12px 0 0;padding:0 0 16px}.booking-extra-choice{padding:9px 0;font-size:14px;margin:0!important}.booking-extra-choice>span{overflow-wrap:anywhere;min-width:0}.booking-extra-choice strong{font-weight:550;display:block}.booking-extra-choice small{color:var(--booking-muted);margin-top:4px;font-size:12px;line-height:1.6;display:block}.booking-extra-disabled{cursor:default;opacity:.7}.booking-extras>.booking-text-link{margin-top:10px}.booking-managed-fields{border:0;min-width:0;margin:0;padding:0}.booking-site-copy{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7}.booking-site-faq{border-bottom:1px solid var(--booking-line);padding:12px 0}.booking-site-faq summary{cursor:pointer;align-items:center;min-height:44px;font-weight:600;display:flex}.booking-site-faq summary:focus-visible{outline:2px solid var(--booking-accent);outline-offset:3px}.booking-site-faq p{margin:12px 0}.booking-discount-parts{color:var(--booking-muted);margin-top:4px;font-size:11px;font-weight:400;line-height:1.5;display:block}.booking-receipt-transactions dt{overflow-wrap:anywhere;flex:1;min-width:0}.booking-receipt-transactions dd{flex-shrink:0}.booking-source-note{border-top:1px solid var(--booking-line);border-bottom:1px solid var(--booking-line);margin:0 0 20px;padding:16px 0}.booking-source-note p{margin-bottom:10px}.booking-source-note .booking-eyebrow{margin-bottom:12px}.booking-source-actions{flex-wrap:wrap;gap:14px;margin:12px 0;display:flex}.booking-reviewed-policy-terms p+p{margin-top:.7rem}.booking-accepted-policy{margin:1.25rem 0}.booking-accepted-policy summary{cursor:pointer;padding-block:.25rem;font-weight:650}.booking-accepted-policy summary:focus-visible{outline:2px solid var(--booking-accent);outline-offset:4px;border-radius:3px}.booking-accepted-policy[open] summary{margin-bottom:.8rem}.booking-root :where(.booking-time,.booking-choice-price,.booking-service-end strong,.booking-price-summary,.booking-total-row,dd){font-variant-numeric:tabular-nums}.booking-shop-intro{max-width:720px}.booking-root :where(summary){min-height:44px;padding-block:10px}.booking-root :where(p,dd,dt,label){overflow-wrap:anywhere}@media (max-width:760px){.booking-date-input input{font-size:16px}}.booking-shop-hero-with-photo{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:48px;padding-block:44px;display:grid}.booking-shop-hero-with-photo .booking-shop-intro{min-width:0}.booking-shop-hero-with-photo .booking-shop-intro h1{max-width:560px;margin-block:16px 20px;font-size:clamp(34px,4.4vw,52px);line-height:1.08}.booking-shop-hero-with-photo .booking-shop-description{max-width:440px}.booking-shop-hero-photo{min-width:0}.booking-shop-hero-photo .booking-gallery-frame{aspect-ratio:3/2;border:0;border-radius:6px}.booking-shop-hero-photo .booking-gallery-frame>img{object-fit:cover}.booking-shop-hero-photo .booking-photo-unavailable{min-height:220px}@media (max-width:760px){.booking-shop-hero-with-photo{grid-template-columns:minmax(0,1fr);gap:28px;padding-block:30px}.booking-shop-hero-with-photo .booking-shop-intro h1{font-size:clamp(32px,7.5vw,42px)}.booking-shop-hero-photo .booking-gallery-frame{aspect-ratio:8/5}.booking-service-row p{margin-bottom:8px;font-size:13px}.booking-service-row{padding-block:16px}}.booking-offer-product{align-items:center;gap:20px;min-width:0;margin:20px 0 14px;display:flex}.booking-offer-product>div{min-width:0}.booking-offer-product h3{overflow-wrap:anywhere;margin:0 0 6px;font-size:18px;font-weight:650}.booking-offer-product p{color:var(--booking-muted);overflow-wrap:anywhere;margin:0;font-size:14px;line-height:1.6}.booking-offer-product-photo{object-fit:contain;border:1px solid var(--booking-line);background:#fff;border-radius:12px;flex:none;width:132px;height:132px;padding:10px}@media (max-width:560px){.booking-offer-product{gap:14px}.booking-offer-product-photo{width:104px;height:104px;padding:6px}.booking-offer-product-actions{flex-direction:column}}
