.booking-page{background:var(--paper);min-height:100vh;color:var(--ink);font-family:var(--sans);padding:0 clamp(20px,5vw,88px)}.booking-header{border-bottom:1px solid var(--line-light);justify-content:space-between;align-items:center;max-width:1240px;height:100px;margin:auto;font-size:13px;display:flex}.booking-header .monogram{color:var(--ink)}.booking-layout{grid-template-columns:1fr 1.1fr;align-items:start;gap:clamp(32px,6vw,96px);max-width:1240px;margin:auto;padding:72px 0 80px;display:grid}.booking-eyebrow{letter-spacing:.14em;color:var(--blue);margin:0 0 22px;font-size:11px;font-weight:700}.booking-intro h1{letter-spacing:-.055em;margin:0 0 26px;font-size:clamp(32px,3.6vw,52px);font-weight:700;line-height:1.14}.booking-intro h1 span{color:var(--blue)}.booking-intro>p:not(.booking-eyebrow){max-width:420px;color:var(--ink-soft);font-size:14px;line-height:1.9}.booking-facts{border-top:1px solid var(--line-light);margin-top:34px}.booking-facts>div{border-bottom:1px solid var(--line-light);grid-template-columns:115px 1fr;gap:10px;padding:17px 0;display:grid}.booking-facts dt{letter-spacing:.07em;color:var(--ink-soft);padding-top:4px;font-size:10px}.booking-facts dd{font-size:14px;line-height:1.6}.booking-facts small{font-size:11px}.booking-aside-note{margin-top:22px}.booking-card{background:var(--white);border:1px solid var(--line-light);min-width:0;min-height:470px;padding:clamp(22px,3.2vw,42px);box-shadow:7px 7px #1717130b}.booking-step{color:var(--ink-soft);letter-spacing:.09em;justify-content:space-between;gap:16px;margin-bottom:24px;font-size:10px;display:flex}.booking-card h2{letter-spacing:-.035em;margin:0 0 24px;font-size:clamp(24px,2.3vw,32px);font-weight:700;line-height:1.3}.booking-zone{color:var(--ink-soft);gap:7px;margin:0 0 24px;font-size:11px;display:grid}.booking-zone select{border:1px solid var(--line-light);width:100%;max-width:340px;color:var(--ink);font:inherit;background:0 0;border-radius:0;padding:9px 10px;font-size:12px}.booking-days{flex-wrap:wrap;gap:6px;margin-bottom:26px;display:flex}.booking-days button{border:1px solid var(--line-light);cursor:pointer;flex-direction:column;flex:43px;align-items:center;gap:6px;padding:11px 4px;display:flex}.booking-days small{font-size:10px}.booking-days strong{font-size:20px;font-weight:700}.booking-days button[aria-pressed=true]{background:var(--ink);color:var(--white);border-color:var(--ink)}.booking-times{grid-template-columns:1fr 1fr;gap:10px;display:grid}.booking-times button{border:1px solid var(--line-light);cursor:pointer;justify-content:space-between;gap:8px;padding:15px 13px;font-size:13px;display:flex}.booking-times button span{color:var(--blue)}.booking-times button:hover,.booking-days button:hover{border-color:var(--blue)}.booking-small{color:var(--ink-soft);margin:22px 0 0;font-size:11px;line-height:1.8}.booking-small a,.booking-error a,.booking-empty a{text-underline-offset:4px;text-decoration:underline}.booking-loading,.booking-empty{padding:30px 0;font-size:13px;line-height:1.9}.booking-empty h3{font-size:17px;font-weight:700}.booking-empty p{margin:12px 0}.booking-selection{border-left:3px solid var(--blue);background:var(--paper);flex-direction:column;gap:6px;margin-bottom:25px;padding:12px 16px;font-size:12px;line-height:1.7;display:flex}.booking-selection span{font-size:11px}.booking-selection button{text-underline-offset:3px;cursor:pointer;align-self:flex-start;font-size:11px;text-decoration:underline}.booking-fields{border:0;gap:18px;min-width:0;padding:0;display:grid}.booking-fields label{gap:8px;font-size:12px;display:grid}.booking-fields label small{color:var(--ink-soft);display:inline}.booking-fields input,.booking-fields textarea{border:1px solid var(--line-light);background:var(--white);width:100%;font:inherit;color:var(--ink);border-radius:0;padding:11px;font-size:16px}.booking-fields textarea{resize:vertical}.booking-primary{background:var(--blue);color:var(--white);border:1px solid var(--blue);cursor:pointer;justify-content:center;align-items:center;width:100%;margin-top:22px;padding:16px 20px;font-size:13px;display:inline-flex}.booking-primary:hover{background:var(--blue-bright)}.booking-page button:disabled,.booking-page fieldset:disabled,.booking-page select:disabled{opacity:.55;cursor:default}.booking-page :focus-visible{outline:2px solid var(--blue);outline-offset:4px}.booking-card h2:focus{outline:none}.booking-fields .booking-trap{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.booking-error{border:1px solid var(--blue);color:var(--blue);margin-top:22px;padding:15px;font-size:12px;line-height:1.8}.booking-error button{cursor:pointer;margin-right:14px;text-decoration:underline}.booking-error p{margin-bottom:10px}.booking-success-mark{background:var(--ink);width:48px;height:48px;color:var(--paper);justify-content:center;align-items:center;margin-bottom:25px;font-size:24px;display:inline-flex}.booking-success>p:not(.booking-eyebrow){overflow-wrap:anywhere;margin-top:20px;font-size:13px;line-height:1.9}.booking-footer{border-top:1px solid var(--line-light);max-width:1240px;color:var(--ink-soft);justify-content:space-between;gap:18px;margin:auto;padding:24px 0;font-size:11px;display:flex}.booking-privacy{max-width:740px;margin:auto;padding:60px 0;font-size:14px;line-height:1.9}.booking-privacy h1{font-size:30px;font-weight:700}.booking-privacy p{margin:24px 0}@media (max-width:760px){.booking-header{height:76px;font-size:11px}.booking-layout{grid-template-columns:1fr;gap:28px;padding:36px 0 45px}.booking-intro h1{font-size:35px}.booking-facts{grid-template-columns:1fr 1fr;gap:0 20px;margin-top:24px;display:grid}.booking-facts>div{display:block}.booking-facts dt{margin-bottom:5px}.booking-facts dd{font-size:12px}.booking-aside-note{display:none}.booking-card{min-height:350px}.booking-footer{flex-direction:column}.booking-times button{min-height:48px}}@media (prefers-reduced-motion:reduce){.booking-page *{scroll-behavior:auto!important}}.booking-footer{flex-wrap:wrap}.booking-privacy h2{margin:36px 0 12px;font-size:20px;font-weight:700;line-height:1.4}.booking-privacy a{text-underline-offset:4px;overflow-wrap:anywhere;text-decoration:underline}.booking-privacy a:hover{color:var(--blue)}.booking-privacy a:focus-visible{outline:2px solid var(--blue);outline-offset:4px}.booking-privacy .legal-date{color:var(--ink-soft);margin-top:10px;font-size:12px}
