.nb-book-page{max-width:1500px;margin:auto}.nb-book-page>h1{font-size:clamp(46px,6vw,88px);margin-bottom:48px}.booking-flow{max-width:860px}.booking-flow h2{font-size:clamp(28px,4vw,48px);letter-spacing:-.035em;line-height:1.1;margin:32px 0 20px}.booking-flow h2:focus{outline:none}.booking-flow p{line-height:1.65;max-width:65ch}.booking-progress{list-style:none;display:flex;gap:24px;border-bottom:1px solid #ffffff25;padding:0 0 18px;flex-wrap:wrap;font-size:12px;color:#a5a8aa}.booking-progress li[aria-current]{color:#e5e4e2}.booking-progress span{font-family:monospace;color:#95a8b6;margin-right:4px}.booking-context{color:#e5e4e2}.booking-context>span,.booking-help{font-size:13px;color:#b2b5b8}.booking-services{border-top:1px solid #ffffff25}.booking-service{display:flex;width:100%;text-align:left;align-items:center;gap:22px;background:transparent;border:0;border-bottom:1px solid #ffffff25;color:#e5e4e2;padding:24px 0;cursor:pointer}.booking-service>span{display:grid;gap:10px;flex:1}.booking-service strong{font-size:26px;font-weight:500}.booking-service small{font-size:12px;color:#c2c5c7}.booking-service img{width:110px;height:140px;object-fit:cover}.booking-service svg{width:24px;flex-shrink:0}.booking-service:hover strong{text-decoration:underline;text-underline-offset:6px}.booking-calendar{max-width:660px;margin:28px 0}.booking-month-nav{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px}.booking-month-nav h3{font-size:19px;margin:0}.booking-back,.booking-month-nav button,.booking-primary,.booking-times button{color:#e5e4e2;background:rgba(83,104,120,.15);border:1px solid #ffffff30;border-radius:10px;min-height:46px;padding:12px 18px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:12px}.booking-calendar svg,.booking-flow svg{width:20px;height:20px}.booking-days,.booking-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.booking-weekdays span{text-align:center;font-size:12px;color:#b3b6b8;padding:8px 0}.booking-days button{min-height:52px;border-radius:8px;border:1px solid transparent;background:#ffffff09;color:#e5e4e2;font-size:16px;cursor:pointer;padding:8px 2px}.booking-days button:disabled{color:#626669;background:transparent;cursor:default}.booking-days button.today{border-color:#a1a7ac}.booking-days button.selected,.booking-days button:not(:disabled):hover,.booking-times button[aria-pressed=true]{background:#536878;border-color:#a1b4c1}.booking-times{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:12px;margin:24px 0}.booking-fields{display:grid;gap:24px;margin:28px 0}.booking-field-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.booking-fields label{display:grid;gap:9px;font-size:14px}.booking-fields small{font-size:12px;color:#b2b5b8}.booking-fields input,.booking-fields select,.booking-fields textarea{box-sizing:border-box;width:100%;min-height:48px;border-radius:8px;border:1px solid #ffffff38;background:#0a0a0ae6;color:#e5e4e2;padding:12px;font:inherit;font-size:16px}.booking-fields input.booking-checkbox{width:24px;min-height:24px;accent-color:#536878}.booking-flow :focus-visible{outline:2px solid #bbcbd5;outline-offset:3px}.booking-primary{background:#53687850;font-weight:600;justify-self:start}.booking-primary:disabled{opacity:.6;cursor:wait}.booking-back{background:transparent;margin-top:24px;font-size:13px}.booking-receipt dl,.booking-review{display:grid;grid-template-columns:140px minmax(0,1fr);gap:18px;margin:30px 0;border-block:1px solid #ffffff25;padding:24px 0}.booking-receipt dt,.booking-review dt{color:#b3b6b8;font-size:13px}.booking-receipt dd,.booking-review dd{margin:0;overflow-wrap:anywhere;white-space:pre-wrap}.booking-review-answer{display:contents}.booking-error{border-left:3px solid #b9a09a;background:#ffffff08;padding:16px;line-height:1.5}.booking-error button{margin-left:16px}.booking-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.booking-receipt a{display:inline-flex;gap:10px;align-items:center}body:has(.nb-book-page) .nb-site-background{opacity:.25}@media(max-width:600px){.nb-book-page>h1{font-size:48px;margin:32px 0}.booking-progress{gap:12px;font-size:10px}.booking-progress span{display:block;margin-bottom:5px}.booking-field-pair{grid-template-columns:1fr}.booking-service{gap:14px}.booking-service img{width:76px;height:110px}.booking-service strong{font-size:21px}.booking-days button{min-height:44px}.booking-days,.booking-weekdays{gap:3px}.booking-primary{width:100%}.booking-receipt dl,.booking-review{grid-template-columns:1fr;gap:8px}.booking-receipt dd,.booking-review dd{margin-bottom:16px}.booking-flow{min-width:0}}.booking-choice{border:0;padding:0;margin:0;min-width:0}.booking-choice legend{margin-bottom:12px;font-size:14px}.booking-fields .booking-choice label{display:flex;align-items:center;gap:12px;min-height:44px}.booking-fields .booking-choice input{width:20px;min-height:20px;margin:0;accent-color:#536878}.nb-book-page:has(.booking-flow[data-active=true])>h1{display:none}.nb-book-page:has(.booking-flow[data-active=true])>.section-line{margin-bottom:24px}.booking-flow h2{scroll-margin-top:110px}@media(max-width:600px){.nb-book-page:has(.booking-flow[data-active=true]){padding-top:110px}.nb-book-page:has(.booking-flow[data-active=true])>.section-line{display:none}}