.booking-card{--booking-ink:#252a31;--booking-muted:#747d88;--booking-border:#e4e7eb;--booking-surface:#fff;--booking-subtle:#f7f8fa;color:var(--booking-ink);border-color:var(--booking-border);scroll-margin-top:135px}
.pd-sidebar:has(.booking-card){position:static}.booking-eyebrow{display:block;color:#d70000;font-size:9px;font-weight:650;letter-spacing:1.1px;margin-bottom:10px}.booking-card h2{font-size:21px;line-height:1.3;color:var(--booking-ink);margin-bottom:10px}.booking-card .booking-intro{font-size:12px;color:var(--booking-muted);line-height:1.8;margin:0 0 20px}
.booking-card .booking-form{display:grid;gap:15px;margin-top:22px}.booking-form>label,.booking-schedule>label{display:grid;gap:7px;font-size:11px;font-weight:600;line-height:1.6;min-width:0}.booking-field-label{display:block}.booking-field-label>b{color:#d70000;font-weight:400}.booking-form label small{font-size:10px;font-weight:400;color:var(--booking-muted)}.booking-website{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;pointer-events:none}
.booking-card .booking-form input:not([type=hidden]),.booking-card .booking-form textarea,.booking-form select{display:block;max-width:100%;width:100%;min-width:0;min-height:42px;padding:10px;border:1px solid var(--booking-border);border-radius:3px;background:var(--booking-surface);color:var(--booking-ink);font:400 12px/1.5 Inter,Arial,sans-serif;transition:border-color .2s}.booking-card .booking-form textarea{min-height:90px;resize:vertical}.booking-card .booking-form input::placeholder,.booking-card .booking-form textarea::placeholder{color:#8d96a2}.booking-card .booking-form input:focus-visible,.booking-card .booking-form textarea:focus-visible{outline:2px solid #d70000;outline-offset:2px;border-color:#d70000}.booking-form .rm-select{margin-top:0}.booking-form .rm-select-trigger{border-color:var(--booking-border);background:var(--booking-surface);color:var(--booking-ink);border-radius:3px;min-height:42px;box-shadow:none;font-size:12px}.booking-schedule{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:11px}.booking-card .booking-form input[type=date],.booking-card .booking-form input[type=time]{padding:10px 7px;font-size:11px;min-height:43px}.booking-card .booking-time-note{font-size:10px;font-weight:400;color:var(--booking-muted);margin:-7px 0 0;line-height:1.6}
.booking-form .booking-submit{display:flex;align-items:center;justify-content:center;gap:8px;min-height:45px;border-radius:3px;background:#d70000;color:#fff}.booking-submit .booking-send-icon{width:17px;height:17px;flex-shrink:0}.booking-form .booking-submit:hover{background:#ba0000}.booking-form .booking-submit[disabled]{opacity:.7;cursor:wait}.booking-submit[aria-busy=true] .booking-send-icon{display:none}.booking-submit[aria-busy=true]::before{content:'';display:block;width:16px;height:16px;border:2px solid #ffffff60;border-top-color:#fff;border-radius:50%;animation:booking-spinner .8s linear infinite}@keyframes booking-spinner{to{transform:rotate(360deg)}}.booking-card .booking-confirmation-note{font-size:10px;line-height:1.75;color:var(--booking-muted);text-align:center}
.booking-notice{padding:14px 13px;border:1px solid;border-radius:3px;font-size:12px;margin:17px 0 0;overflow-wrap:anywhere;line-height:1.7}.booking-notice strong{display:block;font-size:12px;margin-bottom:6px}.booking-notice>span{display:block;font-size:11px}.booking-notice p{font-size:11px;margin:8px 0 0;line-height:1.75}.booking-notice a{font-size:11px;text-underline-offset:3px}.booking-notice>a{display:inline-block;margin-top:9px}.booking-notice ul{margin:5px 0 0;padding-left:17px}.booking-success{color:#236444;border-color:#bfdece;background:#eff9f3}.booking-error{color:#9c3030;border-color:#f0c5c5;background:#fff3f3}
.booking-toast{position:fixed;top:calc(var(--rm-header-height,92px) + 15px);right:22px;z-index:60000;display:flex;align-items:center;gap:11px;max-width:min(420px,calc(100vw - 32px));padding:17px 19px;background:var(--booking-toast-bg,#fff);color:var(--booking-toast-ink,#25342b);border:1px solid var(--booking-toast-border,#dbe5df);border-left:3px solid #24865b;box-shadow:0 8px 30px #0002;border-radius:4px;font-size:12px;line-height:1.65;animation:booking-toast-in .25s ease}.booking-toast[data-error=true]{border-left-color:#d70000;color:#a22929}.booking-toast button{display:grid;place-items:center;flex-shrink:0;margin-left:auto;width:24px;height:24px;border:0;background:transparent;color:inherit;cursor:pointer;padding:3px}.booking-toast button svg{width:17px;height:17px}@keyframes booking-toast-in{from{opacity:0;transform:translateY(-7px)}to{opacity:1;transform:translateY(0)}}
html[data-site-theme=dark] .booking-card{--booking-ink:#f0f1f3;--booking-muted:#afb6c0;--booking-border:#44464e;--booking-surface:#25262c;--booking-subtle:#2c2e35;background:#25262c;border-color:#44464e}html[data-site-theme=dark] .booking-eyebrow{color:#ff7777}html[data-site-theme=dark] .booking-card h2{color:var(--booking-ink)}html[data-site-theme=dark] .booking-success{color:#b7e9cc;background:#243a2d;border-color:#3a6148}html[data-site-theme=dark] .booking-error{color:#ffb1b1;background:#3c2629;border-color:#784447}html[data-site-theme=dark] .booking-toast{--booking-toast-bg:#282c30;--booking-toast-ink:#def3e6;--booking-toast-border:#45534b}html[data-site-theme=dark] .booking-toast[data-error=true]{color:#ffb2b2}
@media(max-width:1050px) and (min-width:651px){.booking-schedule{grid-template-columns:1fr}.booking-card{padding:18px}.booking-card h2{font-size:20px}}
@media(max-width:650px){.booking-card{padding:22px}.booking-toast{top:92px;right:16px}.booking-card .booking-form input[type=date],.booking-card .booking-form input[type=time]{font-size:12px}}
@media(max-width:359px){.booking-schedule{grid-template-columns:1fr}.booking-card{padding:19px}}
@media(prefers-reduced-motion:reduce){.booking-card .booking-form input,.booking-card .booking-form textarea{transition:none}.booking-toast{animation:none}.booking-submit[aria-busy=true]::before{animation:none}}
@media(max-width:650px){.booking-card .booking-form input:not([type=hidden]),.booking-card .booking-form textarea,.booking-card .booking-form select,.booking-form .rm-select-trigger{font-size:16px}.booking-card .booking-form input[type=date],.booking-card .booking-form input[type=time]{font-size:16px}.booking-schedule{grid-template-columns:1fr}}
