body.modal-open{overflow:hidden}.qb-booking{box-sizing:border-box;width:min(570px,calc(100% - 28px));max-width:570px;max-height:calc(100svh - 32px);padding:42px;margin:auto;overflow:auto;border:1px solid var(--line);background:var(--paper);color:var(--ink);font-family:var(--sans)}.qb-booking *{box-sizing:border-box}.qb-booking::backdrop{background:#11140fe0;backdrop-filter:blur(4px)}.qb-booking .dialog-close{position:absolute;top:10px;right:14px;width:44px;height:44px;padding:0;border:0;background:transparent;color:var(--muted);font-size:32px;line-height:1;cursor:pointer}.qb-booking .eyebrow{padding:0;margin:0;color:#91633f;font-size:10px;letter-spacing:2px;text-transform:uppercase}.qb-booking h2{font-family:var(--serif);font-size:40px;line-height:1.15;letter-spacing:-1.5px;margin:18px 0 0;font-weight:400}.qb-booking h2 em{color:var(--accent);font-weight:400}.qb-booking .dialog-intro{padding:0;margin:17px 0 0;font-size:13px;color:var(--muted);line-height:1.75}.qb-booking form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:17px;margin-top:25px}.qb-booking label{min-width:0;display:flex;flex-direction:column;gap:7px;font-size:12px;color:var(--muted);line-height:1.5}.qb-booking input,.qb-booking select,.qb-booking textarea{display:block;box-sizing:border-box;width:100%;min-width:0;max-width:100%;min-height:46px;padding:11px 12px;border:1px solid #c8c8bc;border-radius:0;background:#fffdf8;color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.4}.qb-booking input[type=date]{appearance:none;-webkit-appearance:none;min-height:48px;overflow:hidden}.qb-booking input[type=date]::-webkit-date-and-time-value{min-height:24px;text-align:left}.qb-booking textarea{resize:vertical;min-height:80px}.qb-booking .full-field{grid-column:1/-1}.qb-booking .optional{font-size:11px;color:var(--muted)}.qb-booking .button{display:flex;justify-content:space-between;align-items:center;gap:15px;min-height:54px;border:1px solid var(--ink);background:var(--ink);color:var(--paper);padding:15px 19px;font-family:var(--sans);font-size:13px;cursor:pointer}.qb-booking .button:hover{background:#30372b}.qb-booking .form-note{padding:0;margin:-5px 0 0;font-size:11px;line-height:1.7;color:var(--muted)}.qb-booking .form-alternative{padding:0;margin:0;text-align:center;font-size:12px;color:var(--muted)}.qb-booking .form-alternative a{color:var(--ink);border-bottom:1px solid var(--accent)}.qb-booking .form-error{padding:12px;margin:0;color:#8e3725;background:#f5e3d8;font-size:12px;line-height:1.6}.qb-booking [hidden]{display:none!important}.qb-booking :focus-visible{outline:2px solid var(--accent);outline-offset:3px}@media(max-width:600px){.qb-booking{padding:35px 23px 28px;width:calc(100% - 24px);max-height:calc(100svh - 24px)}.qb-booking h2{font-size:34px}.qb-booking form{gap:14px 12px}.qb-booking .dialog-intro{font-size:12px}.qb-booking label{font-size:11px}.qb-booking .form-note{font-size:10px}.qb-booking .button{font-size:12px;padding:14px 16px}}@media print{.qb-booking{display:none!important}}
