body.bw-booking-active #consultation{display:none}.booking-widget{--bw-teal:#1fc1d0;--bw-teal-dark:#17a5b2;--bw-navy:#001635;--bw-ink:#001635;--bw-muted:#5b6b7a;--bw-mint:#e9f9fa;--bw-mint-selected:#cfeff3;--bw-field:#f2f8f9;--bw-line:#d5edf0;background:#fff;border-radius:7px;max-width:none;margin:20px 0;padding:24px;box-shadow:0 2px 10px #00000014}.booking-widget,.booking-widget *{box-sizing:border-box;font-family:Montserrat,Outfit,Mundial,sans-serif}section:has(.booking-widget){background:#f6f6f6;padding-block:24px}.booking-widget .bw-back-btn{background:var(--bw-mint);color:var(--bw-ink);cursor:pointer;border:none;border-radius:20px;align-items:center;gap:6px;margin-bottom:14px;padding:7px 14px;font-size:13px;font-weight:700;transition:background .2s;display:none}.booking-widget .bw-back-btn.visible{display:inline-flex}.booking-widget .bw-back-btn:hover{background:var(--bw-mint-selected)}.booking-widget .bw-back-btn svg{width:14px;height:14px;stroke:var(--bw-ink);stroke-width:2.5px;fill:none}.booking-widget .booking-widget__header{margin-bottom:18px}.booking-widget .booking-widget__title{color:var(--bw-navy);margin:0 0 14px;font-family:Montserrat,Outfit,Mundial,sans-serif;font-size:26px;font-weight:600;line-height:1.25}.booking-widget .booking-widget__title .bw-title-service{color:var(--bw-teal)}.booking-widget .booking-widget__progress{align-items:center;margin-bottom:4px;display:flex}.booking-widget .bw-progress-dot{background:#e0e0e0;border-radius:50%;flex-shrink:0;width:14px;height:14px;transition:background .4s}.booking-widget .bw-progress-dot.active{background:var(--bw-teal)}.booking-widget .bw-progress-track{background:#e6e6e6;border-radius:3px;flex:1;height:3px;overflow:hidden}.booking-widget .bw-progress-fill{background:linear-gradient(90deg, var(--bw-teal), #1fc1d059);width:0%;height:100%;transition:width .45s;display:block}.booking-widget .bw-skeleton{display:none}.booking-widget .bw-skeleton.visible{display:block}.booking-widget .bw-skeleton-line,.booking-widget .bw-skeleton-block{background:linear-gradient(90deg,#f0f0f0 25%,#fafafa 50%,#f0f0f0 75%) 0 0/200% 100%;border-radius:7px;animation:1.3s ease-in-out infinite bw-shimmer;display:block}.booking-widget .bw-skeleton-line{height:14px;margin-bottom:12px}.booking-widget .bw-skeleton-row{gap:8px;margin-bottom:10px;display:flex}.booking-widget .bw-skeleton-block{flex:1;height:48px}@keyframes bw-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.booking-widget .bw-skeleton-line,.booking-widget .bw-skeleton-block,.booking-widget .bw-progress-fill,.booking-widget .bw-progress-dot{transition:none;animation:none}}.booking-widget .booking-widget__label{color:var(--bw-ink);margin-bottom:10px;font-size:15px;font-weight:400;display:block}.booking-widget .booking-widget__label--summary{font-weight:700}.booking-widget .bw-step{display:none}.booking-widget .bw-step.active{display:block}.booking-widget .bw-test-note{color:#b26a00;text-align:center;background:#fff8e1;border-radius:7px;margin:0 0 14px;padding:8px 12px;font-size:12px}.booking-widget .bw-step-1__cols{display:block}.booking-widget .bw-slots-placeholder{display:none}.booking-widget .bw-date-selection{margin-bottom:18px}.booking-widget .bw-date-btn{background:var(--bw-field);color:var(--bw-muted);cursor:pointer;text-align:center;text-transform:uppercase;letter-spacing:.3px;border:0;border-radius:7px;padding:15px 10px;font-size:14px;font-weight:500;transition:all .2s}.booking-widget .bw-date-btn--wide{text-align:left;width:100%;margin-bottom:8px;padding-left:16px;display:block}.booking-widget .bw-date-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.booking-widget .bw-date-btn:hover:not(:disabled){background:var(--bw-mint)}.booking-widget .bw-date-btn.selected{background:var(--bw-mint-selected);color:var(--bw-navy);box-shadow:inset 0 0 0 1.5px var(--bw-teal);font-weight:700}.booking-widget .bw-date-btn.dimmed{opacity:.4}.booking-widget .bw-date-btn.dimmed:hover:not(:disabled){opacity:.7}.booking-widget .bw-date-btn--closed,.booking-widget .bw-date-btn--closed:hover{opacity:.45;cursor:not-allowed;background:var(--bw-field)}.booking-widget .bw-date-btn--closed .bw-closed-caption{letter-spacing:.5px;color:#999;text-transform:uppercase;margin-top:2px;font-size:10px;font-weight:400;display:block}.booking-widget .bw-no-dates-message{color:#666;text-align:center;padding:20px}.booking-widget .bw-timeslot-section{margin-bottom:18px}.booking-widget .bw-period-tabs{border:1.5px solid var(--bw-line);border-radius:7px;gap:0;margin-bottom:12px;display:flex;overflow:hidden}.booking-widget .bw-period-tab{color:#666;cursor:pointer;text-align:center;text-transform:uppercase;letter-spacing:.3px;background:#fff;border:0;flex:1;padding:12px 8px;font-size:13px;font-weight:700;transition:all .2s}.booking-widget .bw-period-tab:hover:not(.selected){background:var(--bw-mint)}.booking-widget .bw-period-tab.selected{background:var(--bw-mint-selected);color:var(--bw-navy)}.booking-widget .bw-time-slots-grid{grid-template-columns:repeat(5,1fr);gap:8px;display:grid}.booking-widget .bw-time-slot-btn{background:var(--bw-field);color:var(--bw-ink);cursor:pointer;text-align:center;border:0;border-radius:7px;padding:12px 6px;font-size:14px;font-weight:600;transition:all .2s}.booking-widget .bw-time-slot-btn:hover:not(:disabled):not(.selected){background:var(--bw-mint)}.booking-widget .bw-time-slot-btn.selected{background:var(--bw-mint-selected);color:var(--bw-navy);box-shadow:inset 0 0 0 1.5px var(--bw-teal);font-weight:700}.booking-widget .bw-time-slot-btn.dimmed{opacity:.5}.booking-widget .bw-time-slot-btn.dimmed:hover:not(:disabled){opacity:.8}.booking-widget .bw-time-slot-btn:disabled{opacity:.4;cursor:not-allowed}.booking-widget .bw-no-slots-message{color:#999;padding:10px 0;font-size:13px;display:none}.booking-widget .bw-no-slots-message.visible{display:block}.booking-widget .bw-booking-summary{margin-bottom:10px}.booking-widget .bw-summary-tags{flex-wrap:wrap;gap:10px;display:flex}.booking-widget .bw-summary-tag{background:var(--bw-mint);min-width:120px;color:var(--bw-ink);border:0;border-radius:7px;flex:1;align-items:center;gap:10px;padding:14px 16px;font-size:14px;font-weight:700;display:flex}.booking-widget .bw-summary-tag svg{width:18px;height:18px;stroke:var(--bw-teal);stroke-width:2px;fill:none;flex-shrink:0}.booking-widget .bw-contact-form{flex-direction:column;gap:12px;display:flex}.booking-widget .bw-form-row{gap:12px;display:flex}.booking-widget .bw-form-group{flex-direction:column;flex:1;gap:6px;display:flex}.booking-widget .bw-form-label-row{align-items:center;gap:6px;display:flex}.booking-widget .bw-form-group label{color:var(--bw-ink);font-size:13px;font-weight:500}.booking-widget .bw-form-group label .required{color:#c62828}.booking-widget .bw-form-group input{color:var(--bw-ink);background:var(--bw-field);border:0;border-radius:7px;width:100%;height:48px;min-height:48px;padding:12px 14px;font-size:14px;transition:all .2s}.booking-widget .bw-form-group input:focus{background:var(--bw-mint);box-shadow:0 0 0 2px var(--bw-teal);outline:none}.booking-widget .bw-form-group input.error{box-shadow:0 0 0 1.5px #c62828}.booking-widget .bw-form-group .error-message{color:#c62828;font-size:11px;display:none}.booking-widget .bw-form-group.has-error .error-message{display:block}.booking-widget .bw-help-wrapper{align-items:center;display:inline-flex;position:relative}.booking-widget .bw-help-icon{background:var(--bw-ink);color:#fff;cursor:pointer;border:0;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;padding:0;font-size:11px;font-weight:700;line-height:1;display:inline-flex}.booking-widget .bw-help-tooltip{color:#fff;z-index:100;background:#2d3748;border-radius:8px;width:240px;padding:12px 30px 12px 14px;font-size:12px;line-height:1.5;display:none;position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%);box-shadow:0 4px 12px #00000026}.booking-widget .bw-help-tooltip:after{content:"";border:6px solid #0000;border-top-color:#2d3748;position:absolute;top:100%;left:50%;transform:translate(-50%)}.booking-widget .bw-help-tooltip.open{display:block}.booking-widget .bw-help-tooltip__close{color:#fff;cursor:pointer;background:0 0;border:0;padding:2px 6px;font-size:16px;line-height:1;position:absolute;top:6px;right:6px}@media (hover:hover){.booking-widget .bw-help-wrapper:hover .bw-help-tooltip{display:block}}.booking-widget .bw-phone-wrapper{position:relative}.booking-widget .bw-phone-wrapper input{letter-spacing:2px;caret-color:var(--bw-teal);font-size:15px}.booking-widget .bw-phone-mask{letter-spacing:2px;pointer-events:none;white-space:pre;color:#0000;align-items:center;padding:12px 14px;font-size:15px;display:flex;position:absolute;inset:0}.booking-widget .bw-phone-mask .typed{color:#0000}.booking-widget .bw-phone-mask .dash{color:silver;transition:opacity .15s}.booking-widget .bw-phone-mask .cursor-dash{color:var(--bw-teal)}.booking-widget .bw-phone-wrapper input:focus+.bw-phone-mask .cursor-dash{animation:1s ease-in-out infinite bw-dash-pulse}@keyframes bw-dash-pulse{0%,to{opacity:1}50%{opacity:.3}}@media (prefers-reduced-motion:reduce){.booking-widget .bw-phone-wrapper input:focus+.bw-phone-mask .cursor-dash{animation:none}}.booking-widget .bw-button-section{margin-top:20px}.booking-widget .bw-btn{cursor:pointer;border:none;border-radius:7px;justify-content:center;align-items:center;gap:10px;width:100%;padding:16px 20px;font-size:15px;font-weight:700;transition:all .2s;display:inline-flex}.booking-widget .bw-btn-primary{color:#9b9b9b;cursor:not-allowed;opacity:.5;background:#e9e9e9}.booking-widget .bw-btn-primary.active{background:var(--bw-navy);color:#fff;cursor:pointer}.booking-widget .bw-btn-primary.active:hover{background:#0a2a55}.booking-widget .bw-btn-primary.loading{background:var(--bw-navy);color:#fff;cursor:wait}.booking-widget .bw-btn-arrow{stroke:currentColor;stroke-width:2px;fill:none;width:18px;height:18px;display:none}.booking-widget .bw-btn-primary.active .bw-btn-arrow.visible,.booking-widget .bw-btn-primary.loading .bw-btn-arrow.visible{display:inline-block}.booking-widget button:focus-visible,.booking-widget input:focus-visible{outline:2px solid var(--bw-teal);outline-offset:2px}.booking-widget .bw-success__card{background:var(--bw-mint);border-radius:12px;flex-direction:column;align-items:center;gap:12px;margin:26px 0 22px;padding:34px 24px;display:flex}.booking-widget .bw-success__check svg{fill:none;width:34px;height:34px;stroke:var(--bw-teal);stroke-width:1.8px}.booking-widget .bw-success__word{color:var(--bw-ink);font-size:26px;font-weight:700}.booking-widget .bw-success__thanks{color:var(--bw-ink);margin:0 0 10px;font-size:15px;font-weight:700}.booking-widget .bw-success__copy{color:var(--bw-ink);margin:0 0 24px;font-size:15px;line-height:1.55}.booking-widget .bw-btn-calendar{border:1.5px solid var(--bw-teal);width:100%;color:var(--bw-teal);cursor:pointer;background:#fff;border-radius:7px;justify-content:center;align-items:center;gap:8px;padding:14px 20px;font-size:15px;font-weight:700;transition:all .2s;display:inline-flex}.booking-widget .bw-btn-calendar:hover{background:var(--bw-teal);color:#fff}.booking-widget .bw-btn-calendar:hover svg{stroke:#fff}.booking-widget .bw-btn-calendar svg{width:16px;height:16px;stroke:var(--bw-teal);stroke-width:2px;fill:none;transition:stroke .2s}.booking-widget .bw-error{color:#c62828;background:#fff5f5;border:1px solid #ffcdd2;border-radius:7px;margin-top:14px;padding:12px 16px;font-size:13px;display:none}.booking-widget .bw-error.visible{display:block}.booking-widget .bw-slot-error{color:#f57c00;background:#fff8e1;border:1px solid #ffe082;border-radius:7px;margin-bottom:14px;padding:12px 16px;font-size:13px;display:none}.booking-widget .bw-slot-error.visible{display:block}@media (min-width:992px){.booking-widget{border-radius:12px;max-width:none;margin:28px 0;padding:36px 40px}.booking-widget .booking-widget__title{font-size:30px}.booking-widget .booking-widget__header{margin-bottom:24px}.booking-widget .bw-step-1__cols{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:0 40px;display:grid}.booking-widget .bw-step-1__col--left{padding-right:4px}.booking-widget .bw-date-grid{grid-template-columns:repeat(3,1fr)}.booking-widget .bw-time-slots-grid{grid-template-columns:repeat(4,1fr)}.booking-widget .bw-timeslot-section{margin-bottom:0}.booking-widget .bw-slots-placeholder{background:var(--bw-mint);min-height:232px;color:var(--bw-muted);text-align:center;border-radius:7px;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:28px;font-size:14px;display:flex}.booking-widget .bw-slots-placeholder svg{width:28px;height:28px;stroke:var(--bw-teal);stroke-width:1.6px;fill:none}.booking-widget.bw-slots-open .bw-slots-placeholder{display:none}.booking-widget .bw-step-1 .bw-button-section{max-width:420px;margin-left:auto;margin-right:auto}.booking-widget .bw-contact-form{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px 20px;display:grid}.booking-widget .bw-form-row{display:contents}.booking-widget .bw-form-group--full{grid-column:1/-1}.booking-widget .bw-step-2 .bw-button-section{max-width:420px;margin:24px auto 0}.booking-widget .bw-step-3{max-width:640px;margin:0 auto}}@media (max-width:480px){.booking-widget{padding:18px}.booking-widget .booking-widget__title{font-size:22px}.booking-widget .bw-date-btn{padding:13px 8px;font-size:13px}.booking-widget .bw-period-tab{padding:10px 6px;font-size:12px}.booking-widget .bw-time-slots-grid{grid-template-columns:repeat(4,1fr)}.booking-widget .bw-time-slot-btn{padding:10px 4px;font-size:13px}.booking-widget .bw-summary-tags{flex-direction:row}.booking-widget .bw-summary-tag{min-width:0;padding:12px 14px;font-size:13px}.booking-widget .bw-success__card{padding:26px 20px}.booking-widget .bw-success__word{font-size:22px}.booking-widget .bw-help-tooltip{width:220px}}
