.booking-modal-overlay{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;padding:20px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .3s cubic-bezier(.4, 0, .2, 1),visibility .3s ease}.booking-modal-overlay.active{opacity:1;visibility:visible;pointer-events:auto}.booking-modal-backdrop{position:absolute;inset:0;background:rgba(8,10,15,.75);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.booking-modal-container{position:relative;width:100%;max-width:560px;max-height:92vh;overflow-y:auto;background:var(--bg-card,#fff);border:1px solid var(--border-color,#e2e8f0);border-radius:28px;padding:32px 30px;box-shadow:0 25px 80px -10px rgba(0,0,0,.45);z-index:2;transform:translateY(24px) scale(.96);transition:transform .32s cubic-bezier(.34, 1.56, .64, 1)}.booking-modal-overlay.active .booking-modal-container{transform:translateY(0) scale(1)}[data-theme=dark] .booking-modal-container{background:#12151e;border-color:rgba(255,255,255,.1);box-shadow:0 30px 90px rgba(0,0,0,.85)}.booking-modal-close{position:absolute;top:20px;right:20px;width:38px;height:38px;border-radius:50%;background:var(--bg-alt,#f1f5f9);border:1px solid var(--border-color,#e2e8f0);color:var(--text-sub,#64748b);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;z-index:10}[data-theme=dark] .booking-modal-close{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.1);color:#fafafa}.booking-modal-close:hover{background:var(--brand-primary,#c60202);color:#fff;border-color:var(--brand-primary,#c60202);transform:rotate(90deg)}.booking-modal-header{text-align:left;margin-bottom:24px;padding-right:36px}.booking-modal-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:var(--r-pill,999px);background:rgba(198,2,2,.08);border:1px solid rgba(198,2,2,.2);color:var(--brand-primary,#c60202);font-size:.68rem;font-weight:700;letter-spacing:.6px;text-transform:uppercase;margin-bottom:10px}[data-theme=dark] .booking-modal-pill{background:rgba(198,2,2,.15);border-color:rgba(198,2,2,.3);color:#ff5e5e}.booking-modal-title,h3.booking-modal-title{font-family:var(--font-heading)!important;font-size:22px!important;font-weight:700!important;color:var(--text-main,#0f172a)!important;margin-bottom:6px!important;line-height:1.25!important}[data-theme=dark] .booking-modal-title,[data-theme=dark] h3.booking-modal-title{color:#fff!important}.booking-modal-subtitle{font-size:.84rem;color:var(--text-sub,#64748b);line-height:1.45;margin:0}.booking-modal-form{display:flex;flex-direction:column;gap:16px}.booking-modal-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.booking-modal-field{display:flex;flex-direction:column;gap:6px;text-align:left}.bm-label{font-size:.78rem;font-weight:600;color:var(--text-main,#0f172a)}.bm-req{color:var(--brand-primary,#c60202)}.bm-input-wrap{position:relative;display:flex;align-items:center;width:100%}.bm-input-icon{position:absolute;left:14px;color:var(--text-sub,#94a3b8);pointer-events:none;transition:color .2s ease}.bm-input{width:100%;padding:11px 14px 11px 40px;border-radius:12px;background:var(--bg-alt,#f8fafc);border:1px solid var(--border-color,#e2e8f0);color:var(--text-main,#0f172a);font-family:inherit;font-size:.86rem;outline:0;transition:all .22s ease;box-sizing:border-box}.bm-select{width:100%;padding:11px 38px 11px 40px;border-radius:12px;background-color:var(--bg-alt,#f8fafc);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%2364748B' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;appearance:none;-webkit-appearance:none;-moz-appearance:none;border:1px solid var(--border-color,#e2e8f0);color:var(--text-main,#0f172a);font-family:inherit;font-size:.86rem;outline:0;cursor:pointer;transition:all .22s ease;box-sizing:border-box}[data-theme=dark] .bm-input{background:#0e1017;border-color:rgba(255,255,255,.08);color:#f8fafc}[data-theme=dark] .bm-select{background-color:#0e1017;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%2394A3B8' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat!important;background-position:right 14px center!important;background-size:14px 14px!important;border-color:rgba(255,255,255,.08);color:#f8fafc}.bm-input:focus,.bm-select:focus{border-color:var(--brand-primary,#c60202);background-color:var(--bg-card,#fff);box-shadow:0 0 0 3px rgba(198,2,2,.12)}[data-theme=dark] .bm-input:focus,[data-theme=dark] .bm-select:focus{background-color:#12151e}.bm-input-wrap:focus-within .bm-input-icon{color:var(--brand-primary,#c60202)}.bm-submit-btn{width:100%;display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:14px 24px;border-radius:var(--r-pill,999px);background:var(--brand-primary,#c60202);color:#fff;border:none;font-family:var(--font-btn, inherit);font-size:.95rem;font-weight:700;cursor:pointer;box-shadow:0 6px 22px rgba(198,2,2,.35);transition:all .25s var(--ease-smooth, ease);margin-top:4px}.bm-submit-btn:hover{background:#a80202;transform:translateY(-2px);box-shadow:0 10px 30px rgba(198,2,2,.5)}.bm-btn-arrow{width:28px;height:28px;border-radius:50%;background:rgba(255,255,255,.2);color:#fff;display:flex;align-items:center;justify-content:center;transition:all .25s ease}.bm-submit-btn:hover .bm-btn-arrow{background:#fff;color:var(--brand-primary,#c60202);transform:translateX(4px)}.booking-modal-container::-webkit-scrollbar{width:6px}.booking-modal-container::-webkit-scrollbar-track{background:0 0}.booking-modal-container::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:999px}.booking-modal-container::-webkit-scrollbar-thumb:hover{background:var(--brand-primary,#c60202)}[data-theme=dark] .booking-modal-container::-webkit-scrollbar-thumb{background:#2d3748}[data-theme=dark] .booking-modal-container::-webkit-scrollbar-thumb:hover{background:var(--brand-primary,#c60202)}.bm-trust-strip{display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap;padding-top:6px;border-top:1px solid var(--border-color,#e2e8f0);margin-top:2px}.bm-trust-strip span{display:inline-flex;align-items:center;gap:5px;font-size:.72rem;font-weight:600;color:var(--text-sub,#64748b)}.bm-trust-strip svg{color:var(--brand-primary,#c60202)}.booking-modal-success{text-align:center;padding:20px 10px}.bm-success-icon-wrap{width:72px;height:72px;border-radius:50%;background:rgba(16,185,129,.12);border:1px solid rgba(16,185,129,.3);color:#10b981;display:flex;align-items:center;justify-content:center;margin:0 auto 20px;animation:pulseBeacon 2s infinite}.bm-success-title{font-family:var(--font-heading);font-size:1.4rem;font-weight:700;color:var(--text-main,#0f172a);margin-bottom:10px}.bm-success-desc{font-size:.88rem;color:var(--text-sub,#64748b);line-height:1.55;margin-bottom:24px}.bm-success-actions{display:flex;flex-direction:column;gap:10px}@media (max-width:600px){.booking-modal-container{width:calc(100% - 0px)!important;max-width:100%!important;padding:22px 16px 18px 16px!important;border-radius:20px!important;max-height:92vh!important}.booking-modal-header{margin-bottom:14px!important;padding-right:32px!important}.booking-modal-close{top:14px!important;right:14px!important;width:34px!important;height:34px!important}.booking-modal-title,h3.booking-modal-title{font-size:20px!important;font-weight:700!important;line-height:1.25!important}.booking-modal-subtitle{font-size:.8rem!important;line-height:1.4!important}.booking-modal-form{gap:12px!important}.booking-modal-row{grid-template-columns:1fr!important;gap:12px!important}.booking-modal-field{gap:5px!important}.bm-label{font-size:.76rem!important}.bm-input,.bm-select{padding:11px 14px 11px 38px!important;font-size:.86rem!important;border-radius:12px!important}.bm-input-icon{left:12px!important}.bm-submit-btn{width:100%!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;padding:12px 16px!important;min-height:48px!important;font-size:.88rem!important;gap:8px!important;margin-top:4px!important;white-space:nowrap!important;box-sizing:border-box!important}.bm-submit-btn span{white-space:nowrap!important;line-height:1!important}.bm-btn-arrow{width:26px!important;height:26px!important;min-width:26px!important;flex-shrink:0!important}.bm-btn-arrow svg{width:14px!important;height:14px!important}.bm-trust-strip{gap:8px 14px!important;padding-top:8px!important;margin-top:2px!important;justify-content:center!important}.bm-trust-strip span{font-size:.7rem!important}}