.booking-page{min-width:0}.booking-page [hidden]{display:none!important}.booking-pending,.booking-new,.booking-records{overflow-wrap:anywhere;background:#fff;border:1px solid #d3ded3;border-radius:16px;min-width:0;margin-block:24px;padding:24px}.booking-pending h2,.booking-new h2,.booking-records h2{margin:0 0 16px;font-size:30px;line-height:1.15}.booking-page h3{font-size:23px;line-height:1.25}.booking-page h4{font-size:18px}.booking-new h3{outline:none;margin-block:8px 14px}.booking-new h3:focus-visible{outline-offset:4px;border-radius:4px;outline:2px solid #285b42}.booking-new [tabindex="-1"]:focus,.booking-pending [tabindex="-1"]:focus{outline:none}.booking-new [tabindex="-1"]:focus-visible,.booking-pending [tabindex="-1"]:focus-visible{outline-offset:4px;border-radius:4px;outline:2px solid #285b42}.booking-page button{white-space:normal;overflow-wrap:anywhere;max-width:100%;min-height:44px}.booking-page button:focus-visible,.booking-page a:focus-visible,.booking-page input:focus-visible{outline-offset:2px;outline:3px solid #285b42}.booking-muted{color:#5c6c5c;font-size:14px;line-height:1.6}.booking-message{background:#f1f5ed;border:1px solid #c4d3c2;border-radius:10px;padding:14px 16px}.booking-message[data-booking-message=error]{background:#fbf2ed;border-color:#d9b8a8}.booking-gate{background:#faf6ec;border-left:3px solid #b08a3e;border-radius:0 10px 10px 0;padding:14px 16px}.booking-actions{flex-wrap:wrap;gap:10px;margin-block:14px;display:flex}.booking-link{min-height:44px;font:inherit;color:#214d3d;cursor:pointer;background:0 0;border:0;padding:8px 0;font-weight:650;text-decoration:underline}.booking-link:disabled{opacity:.6;cursor:default}.booking-chosen{color:#163f2d;margin-block:0 12px;font-weight:650}.booking-service-block{margin-bottom:8px}.booking-services{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:12px;display:grid}.booking-page button.booking-service{color:#163f2d;width:100%;font:inherit;text-align:left;cursor:pointer;background:#f8faf5;border:1px solid #cbd9cc;border-radius:12px;flex-direction:column;align-items:flex-start;gap:4px;min-width:0;padding:14px 16px;display:flex}.booking-page button.booking-service:hover{background:#eef5ea}.booking-page button.booking-service[aria-pressed=true]{background:#e3efdc;border-color:#24543d;box-shadow:inset 0 0 0 1px #24543d}.booking-page button.booking-service:disabled{cursor:default;opacity:.7}.booking-service-title{font-size:17px}.booking-when{margin-top:20px}.booking-when-grid{grid-template-columns:minmax(0,1fr);align-items:start;gap:8px 28px;display:grid}.booking-when-calendar,.booking-when-hours{min-width:0}.booking-when-hours>p:first-child{margin-top:12px}.booking-empty{background:#f8faf5;border:1px dashed #b9cbb9;border-radius:12px;padding:18px}.booking-month,.booking-postpone{max-width:440px;margin-block:12px}.booking-month-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.booking-month-head h4{text-transform:capitalize;text-align:center;flex:1;margin:0}.booking-month-step{flex:0 0 44px;width:44px;padding:0;font-size:20px;line-height:1}.booking-grid{gap:4px;display:grid}.booking-grid-row{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.booking-weekdays span,.booking-grid-weekdays span{color:#5c6c5c;text-align:center;padding-block:4px;font-size:12px;font-weight:700}.booking-grid-row>span{min-width:0;display:flex}.booking-day{aspect-ratio:1;font-variant-numeric:tabular-nums;border-radius:10px;justify-content:center;align-items:center;width:100%;min-height:44px;max-height:56px;font-size:15px;display:flex}.booking-day.is-outside{visibility:hidden}.booking-day.is-closed{color:#a3ada3;background:#f3f5f1}button.booking-day,.booking-day.is-open{color:#163f2d;font:inherit;cursor:pointer;background:#eef5ea;border:1px solid #8fae95;padding:0;font-weight:700}button.booking-day:hover{background:#dcebd5}button.booking-day.is-selected,button.booking-day[aria-pressed=true]{color:#fff;background:#24543d;border-color:#24543d}button.booking-day:disabled{cursor:default;opacity:.7}.booking-time-heading{font-weight:650}.booking-chips,.booking-times{flex-wrap:wrap;gap:10px;margin-block:12px;display:flex}.booking-chip,.booking-time{color:#163f2d;min-width:88px;min-height:44px;font:inherit;font-variant-numeric:tabular-nums;cursor:pointer;background:#eef5ea;border:1px solid #8fae95;border-radius:999px;padding:8px 16px;font-weight:700}.booking-chip:hover,.booking-time:hover{background:#dcebd5}.booking-chip:disabled,.booking-time:disabled{opacity:.6;cursor:default}.booking-time[aria-pressed=true],.booking-chip[aria-pressed=true]{color:#fff;background:#24543d;border-color:#24543d}.booking-review{margin-top:24px;scroll-margin-top:16px}.booking-transfer{scroll-margin-top:16px}.booking-transfer-lead{color:#163f2d;font-weight:700}.booking-summary{background:#eef4e9;border:1px solid #9db29e;border-radius:12px;padding:18px}.booking-summary p{margin:6px 0 0}.booking-pay h4{margin-block:18px 4px}.booking-gift,.booking-gift-form,.booking-phone{flex-wrap:wrap;align-items:flex-end;gap:10px;margin-block:12px;display:flex}.booking-gift label,.booking-gift-form label,.booking-phone label{flex:220px;min-width:0;font-weight:650}.booking-gift input,.booking-gift-form input,.booking-phone input{background:#fff;margin:6px 0 0}.booking-done-line{color:#163f2d;font-size:18px;font-weight:700}.booking-transfer .payment-checkout,.booking-review .payment-checkout{margin-block:16px}.booking-pending-card{background:#f8faf5;border:1px solid #cbd9cc;border-radius:12px;min-width:0;margin-block:12px;padding:18px}.booking-pending-head{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.booking-pending-head h3{margin:0}.booking-badge,.booking-status{color:#1e4a33;background:#e5efe0;border-radius:999px;padding:4px 10px;font-size:13px;font-weight:700;display:inline-block}.booking-pay-notes{gap:4px;margin-block:8px;display:grid}.booking-pending-when,.booking-pending-price,.booking-pending-text{margin-block:6px}.booking-confirm{background:#f1f5ed;border:1px solid #c4d3c2;border-radius:10px;padding:14px 16px}.booking-confirm .button{margin:8px 8px 0 0}.booking-closed,.booking-history{margin-top:14px}.booking-closed summary,.booking-history summary{cursor:pointer;align-items:center;min-height:44px;font-weight:650;display:flex}.booking-record-list{gap:12px;margin:0;padding:0;list-style:none;display:grid}.booking-record{background:#fff;border:1px solid #cbd9cc;border-radius:12px;min-width:0;padding:18px}.booking-record-head{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.booking-record-head h3,.booking-record-head h4{margin:0}.booking-record-form,.booking-record-intake{margin-top:12px}.booking-contact{color:#5c6c5c;flex-wrap:wrap;align-items:center;gap:8px 14px;margin-block:12px 4px;display:flex}.booking-contact-number{color:#163f2d;font-variant-numeric:tabular-nums;white-space:nowrap}.booking-contact-button{align-items:center;gap:8px;min-height:44px;display:inline-flex}.booking-coupons{color:#5c6c5c;margin-block:8px 24px}.booking-coupons summary{cursor:pointer;color:#214d3d;align-items:center;min-height:44px;font-weight:650;display:inline-flex}.booking-coupons[open] summary{margin-bottom:6px}.booking-coupons .appointment-records{margin-block:0}@media (min-width:760px){.booking-when-grid{grid-template-columns:minmax(0,440px) minmax(0,1fr)}.booking-when-hours>p:first-child{margin-top:22px}}@media (max-width:600px){.booking-pending,.booking-new,.booking-records{border-radius:12px;margin-inline:0;padding:16px}.booking-pending-card,.booking-record,.booking-service,.booking-summary{padding:14px}.booking-actions>.button{text-align:center;flex:100%}.booking-pending h2,.booking-new h2,.booking-records h2{font-size:26px}.booking-page h3{font-size:20px}.booking-grid,.booking-grid-row{gap:3px}.booking-day{border-radius:8px;font-size:14px}.booking-chip,.booking-time{flex:calc(33% - 10px);min-width:0;padding-inline:8px}}
