.booking,.booking *,.booking :before,.booking :after{box-sizing:border-box!important}.booking button{transition:none;color:inherit!important;font-family:var(--sans)!important;font-size:inherit!important;letter-spacing:normal!important;text-transform:none!important;text-align:left!important;width:auto!important;min-width:0!important;box-shadow:none!important;cursor:pointer!important;appearance:none!important;background:0 0!important;border:none!important;border-radius:0!important;margin:0!important;padding:0!important;font-weight:400!important;line-height:1.4!important;text-decoration:none!important}.booking input,.booking textarea{font-family:var(--sans)!important;color:var(--ink)!important;appearance:none!important;background:0 0!important;border-radius:0!important;margin:0!important}.booking h2,.booking p,.booking ol,.booking li,.booking label{text-align:left!important;margin:0!important;padding:0!important}.booking ol{list-style:none!important}.booking span,.booking strong{text-align:inherit!important;text-transform:none!important;letter-spacing:normal!important}.booking{--ink:#0a0a0a;--paper:#fff;--line:#d8d8d8;--muted:#6b6b6b;--sans:"Helvetica Neue", Helvetica, Arial, sans-serif;font-family:var(--sans);max-width:1100px!important;color:var(--ink)!important;text-align:left!important;margin:0 auto!important;padding:0 1.5rem 5rem!important}.booking .steps{border-bottom:1px solid var(--line)!important;margin:0 0 3rem!important;display:flex!important}.booking .step{margin-right:1.5rem;transition:opacity .25s;opacity:.35!important;align-items:baseline!important;gap:.6rem!important;padding:0 1.5rem 1rem 0!important;display:flex!important}.booking .step.is-active,.booking .step.is-done{opacity:1}.booking .step.is-active{box-shadow:inset 0 -2px 0 var(--ink)}.booking .step__num{letter-spacing:.15em!important;font-size:.7rem!important;font-weight:700!important}.booking .step__name{letter-spacing:.2em!important;text-transform:uppercase!important;font-size:.7rem!important}.booking .panel{display:none}.booking .panel.is-active{animation:.3s bk-fade;display:block}@keyframes bk-fade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.booking .panel__head{flex-wrap:wrap;margin-bottom:2rem;justify-content:space-between!important;align-items:center!important;gap:1.5rem!important;display:flex!important}.booking .panel__title{letter-spacing:.02em!important;font-size:clamp(1.5rem,3vw,2rem)!important;font-weight:400!important;line-height:1.2!important}.booking .search{min-width:220px;border:1px solid var(--line)!important;background:0 0!important;padding:.7rem 1rem!important;font-size:.85rem!important}.booking .search:focus{border-color:var(--ink);outline:none}.booking .link-back{letter-spacing:.12em!important;text-transform:uppercase!important;color:var(--muted)!important;font-size:.75rem!important}.booking .link-back:hover{color:var(--ink)}.booking .services{border-top:1px solid var(--line)}.booking .service{transition:padding-left .2s,background .2s;border-bottom:1px solid var(--line)!important;justify-content:space-between!important;align-items:flex-start!important;gap:2rem!important;width:100%!important;padding:1.4rem 0!important;display:flex!important}.booking .service:hover{padding-left:.75rem;background:#fafafa!important}.booking .service__main{min-width:0;flex-direction:column!important;flex:1!important;gap:.35rem!important;display:flex!important}.booking .service__name{letter-spacing:.01em!important;font-size:1rem!important;line-height:1.35!important;display:block!important}.booking .service__desc{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--muted)!important;font-size:.8rem!important;line-height:1.5!important;display:-webkit-box!important;overflow:hidden!important}.booking .service__meta{white-space:nowrap!important;text-align:right!important;flex-direction:column!important;align-items:flex-end!important;gap:.3rem!important;display:flex!important}.booking .service__price{font-size:.95rem!important;font-weight:700!important;display:block!important}.booking .service__dur{letter-spacing:.1em!important;text-transform:uppercase!important;color:var(--muted)!important;font-size:.7rem!important;display:block!important}.booking .chosen{margin-bottom:2.5rem;border-left:2px solid var(--ink)!important;background:#fafafa!important;flex-direction:column!important;gap:.3rem!important;padding:1.2rem 1.4rem!important;display:flex!important}.booking .chosen__label{letter-spacing:.2em!important;text-transform:uppercase!important;color:var(--muted)!important;font-size:.65rem!important;display:block!important}.booking .chosen__name{font-size:1.05rem;display:block}.booking .chosen__meta{color:var(--muted);font-size:.8rem;display:block}.booking .dates{scrollbar-width:thin;margin-bottom:2.5rem;padding-bottom:.75rem;overflow-x:auto;gap:.5rem!important;display:flex!important}.booking .date{transition:border-color .15s,background .15s,color .15s;border:1px solid var(--line)!important;text-align:center!important;flex-direction:column!important;flex:none!important;align-items:center!important;gap:.2rem!important;width:64px!important;padding:.8rem 0!important;display:flex!important}.booking .date:hover:not([disabled]){border-color:var(--ink)}.booking .date.is-selected{background:var(--ink)!important;color:var(--paper)!important;border-color:var(--ink)!important}.booking .date.is-closed{opacity:.25;cursor:not-allowed}.booking .date__wd{letter-spacing:.1em!important;text-transform:uppercase!important;text-align:center!important;font-size:.6rem!important;display:block!important}.booking .date__day{text-align:center!important;font-size:1.15rem!important;font-weight:700!important;display:block!important}.booking .date__mon{text-transform:uppercase!important;letter-spacing:.05em!important;text-align:center!important;font-size:.6rem!important;display:block!important}.booking .slots__head{margin-bottom:1rem;letter-spacing:.15em!important;text-transform:uppercase!important;color:var(--muted)!important;font-size:.7rem!important}.booking .slots__grid{grid-template-columns:repeat(auto-fill,minmax(84px,1fr))!important;gap:.5rem!important;display:grid!important}.booking .slot{transition:background .15s,color .15s,border-color .15s;border:1px solid var(--line)!important;text-align:center!important;padding:.8rem 0!important;font-size:.9rem!important}.booking .slot:hover{background:var(--ink)!important;color:var(--paper)!important;border-color:var(--ink)!important}.booking .summary{margin-bottom:2.5rem;border-top:1px solid var(--line)!important}.booking .sum__row{border-bottom:1px solid var(--line)!important;justify-content:space-between!important;align-items:baseline!important;gap:1.5rem!important;padding:.85rem 0!important;display:flex!important}.booking .sum__key{letter-spacing:.12em!important;text-transform:uppercase!important;color:var(--muted)!important;flex:none!important;font-size:.7rem!important}.booking .sum__val{text-align:right!important;flex:auto!important;font-size:.9rem!important;font-weight:700!important}.booking .sum__row--total .sum__val{font-size:1.1rem}.booking .form{flex-direction:column;gap:1.25rem;display:flex}.booking .field{flex-direction:column;gap:.45rem;display:flex}.booking .field-row{grid-template-columns:1fr 1fr!important;gap:1.25rem!important;display:grid!important}.booking .field label{letter-spacing:.12em!important;text-transform:uppercase!important;color:var(--muted)!important;font-size:.7rem!important}.booking .req{color:var(--ink)}.booking .opt{text-transform:none;letter-spacing:0}.booking .field input,.booking .field textarea{resize:vertical;border:none!important;border-bottom:1px solid var(--line)!important;background:0 0!important;width:100%!important;padding:.6rem 0!important;font-size:1rem!important}.booking .field input:focus,.booking .field textarea:focus{border-bottom-color:var(--ink);outline:none}.booking .hint{margin-top:-.5rem;color:var(--muted)!important;font-size:.75rem!important}.booking .error{background:#fff5f5!important;border-left:2px solid #b00!important;padding:.8rem 1rem!important;font-size:.85rem!important}.booking .error[hidden]{display:none}.booking .btn-submit{margin-top:.75rem;transition:opacity .2s;background:var(--ink)!important;color:var(--paper)!important;border:1px solid var(--ink)!important;letter-spacing:.2em!important;text-transform:uppercase!important;text-align:center!important;padding:1.1rem 2rem!important;font-size:.75rem!important}.booking .btn-submit:hover:not(:disabled){opacity:.82}.booking .btn-submit:disabled{opacity:.45;cursor:wait}.booking .done{text-align:center;padding:3rem 0}.booking .done__mark{border-radius:50%;place-items:center;height:56px;border:1px solid var(--ink)!important;text-align:center!important;width:56px!important;margin:0 auto 1.75rem!important;font-size:1.4rem!important;display:grid!important}.booking .done__title{margin-bottom:2rem;text-align:center!important;font-size:clamp(1.5rem,3vw,2rem)!important;font-weight:400!important}.booking .done__summary{border-top:1px solid var(--line)!important;max-width:420px!important;margin:0 auto 2rem!important}.booking .done__note{margin-bottom:2rem;color:var(--muted)!important;text-align:center!important;font-size:.85rem!important}.booking .done__note a{color:var(--ink)}.booking .btn-outline{transition:background .15s,color .15s;border:1px solid var(--ink)!important;letter-spacing:.2em!important;text-transform:uppercase!important;text-align:center!important;padding:.9rem 2rem!important;font-size:.7rem!important}.booking .btn-outline:hover{background:var(--ink);color:var(--paper)}.booking .state{text-align:center!important;color:var(--muted)!important;padding:2.5rem 0!important;font-size:.9rem!important}.booking .state--err{color:#b00}.booking .state a{color:inherit}@media (width<=640px){.booking{padding:0 1rem 3rem}.booking .steps{overflow-x:auto}.booking .step{margin-right:1rem;padding-right:1rem}.booking .step__name{display:none}.booking .panel__head{flex-direction:column;align-items:stretch}.booking .search{width:100%}.booking .field-row{grid-template-columns:1fr}.booking .service,.booking .sum__row{gap:1rem}}.hero[data-astro-cid-mvaihdzi]{text-align:center;padding:5rem 0 4rem}.hero__inner[data-astro-cid-mvaihdzi]{max-width:640px;margin:0 auto}.hero__title[data-astro-cid-mvaihdzi]{color:var(--text);margin-bottom:1rem;font-size:clamp(2.25rem,5vw,3rem);font-weight:700}.hero__subtitle[data-astro-cid-mvaihdzi]{color:var(--text-muted);font-size:clamp(1rem,2.5vw,1.2rem);line-height:1.65}.phone[data-astro-cid-mvaihdzi]{background:var(--bg-elevated);border-top:1px solid var(--border);padding:4rem 0}.phone__inner[data-astro-cid-mvaihdzi]{text-align:center}.phone__title[data-astro-cid-mvaihdzi]{color:var(--text);margin-bottom:1rem;font-size:clamp(1.25rem,3vw,1.5rem);font-weight:600}.phone__link[data-astro-cid-mvaihdzi]{color:var(--accent);margin-bottom:1rem;font-size:clamp(1.5rem,4vw,2rem);font-weight:600;text-decoration:none;transition:color .2s;display:inline-block}.phone__link[data-astro-cid-mvaihdzi]:hover{color:var(--accent-light)}.phone__hours[data-astro-cid-mvaihdzi]{color:var(--text-muted);font-size:.9375rem}@media (width<=640px){.hero[data-astro-cid-mvaihdzi]{padding:3.5rem 0 3rem}.phone[data-astro-cid-mvaihdzi]{padding:3rem 0}}
