.bva-booking{--booking-forest:var(--navy,#243d52);--booking-ink:var(--ink,#242b2a);--booking-paper:var(--paper,#fafaf7);--booking-lime:var(--lime,#e9eff4);--booking-muted:var(--muted,#5c6462);--booking-line:var(--line,#d9ddda);border:1px solid var(--booking-line);width:100%;min-width:0;color:var(--booking-ink);text-align:left;background:#fff;border-radius:2px;padding:32px;scroll-margin-top:100px;font-family:inherit}.bva-booking *,.bva-booking :before,.bva-booking :after{box-sizing:border-box}.bva-booking button,.bva-booking input,.bva-booking select,.bva-booking textarea{font:inherit}.bva-booking button,.bva-booking select,.bva-booking input[type=date]{cursor:pointer}.bva-booking button{border-radius:6px}.bva-booking a{color:inherit;text-underline-offset:3px;text-decoration:underline}.bva-booking button svg{stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.bva-booking :focus-visible{outline:2px solid var(--booking-forest);outline-offset:4px}.bva-booking :is(input,textarea,select):focus-visible{outline-offset:2px}.bva-booking button:disabled{cursor:not-allowed}.bva-booking__title h3,.bva-booking__success h3{letter-spacing:-.035em;margin:0;font-family:inherit;font-size:1.55rem;font-weight:600;line-height:1.25}.bva-booking__title p{color:var(--booking-muted);margin:10px 0 0;font-size:.875rem;line-height:1.6}.bva-booking__steps{grid-template-columns:1fr 1fr;gap:16px;margin:28px 0 26px;padding:0;list-style:none;display:grid}.bva-booking__steps li{border-bottom:1px solid var(--booking-line);color:var(--booking-muted);align-items:center;gap:9px;padding-bottom:13px;font-size:.8125rem;font-weight:500;display:flex}.bva-booking__steps li span{background:var(--booking-paper);font-variant-numeric:tabular-nums;place-items:center;width:24px;height:24px;font-size:.75rem;display:grid}.bva-booking__steps li.is-current{color:var(--booking-ink);border-color:var(--booking-ink)}.bva-booking__steps li.is-current span{background:var(--booking-forest);color:#fff}.bva-booking__steps li.is-complete span{background:var(--booking-lime);color:var(--booking-ink)}.bva-booking__field{color:var(--booking-ink);margin:0 0 21px;font-size:.8125rem;font-weight:600;line-height:1.5;display:block}.bva-booking__field>span{color:var(--booking-muted);font-size:.75rem;font-weight:400}.bva-booking__field input:not([type=checkbox]),.bva-booking__field select,.bva-booking__field textarea{border:1px solid var(--booking-line);width:100%;min-height:48px;color:var(--booking-ink);caret-color:var(--booking-forest);background:#fff;border-radius:2px;margin-top:8px;padding:11px 12px;font-size:.9375rem;font-weight:400;line-height:1.5;display:block}.bva-booking__field select{padding-right:30px}.bva-booking__field input:hover,.bva-booking__field select:hover,.bva-booking__field textarea:hover{border-color:#9aa9b4}.bva-booking__field input:focus,.bva-booking__field select:focus,.bva-booking__field textarea:focus{border-color:var(--booking-forest)}.bva-booking__field textarea{resize:vertical;min-height:110px}.bva-booking__field small{color:var(--booking-muted);margin-top:7px;font-size:.75rem;font-weight:400;line-height:1.5;display:block}.bva-booking__field ::placeholder{color:#6b7472;opacity:1}.bva-booking__month{justify-content:space-between;align-items:center;gap:16px;margin:4px 0 12px;display:flex}.bva-booking__month h4,.bva-booking__times-heading h4,.bva-booking__unavailable h4{letter-spacing:-.025em;margin:0;font-family:inherit;font-size:1rem;font-weight:600;line-height:1.5}.bva-booking__month-controls{gap:3px;display:flex}.bva-booking__month-controls button{border:1px solid var(--booking-line);width:44px;height:44px;color:var(--booking-ink);background:#fff;place-items:center;padding:0;transition:background .18s,border-color .18s;display:grid}.bva-booking__month-controls button:hover:not(:disabled){border-color:var(--booking-forest);background:var(--booking-paper)}.bva-booking__month-controls button:disabled{color:#a9b0b4;border-color:#e6e9eb}.bva-booking__weekdays,.bva-booking__calendar{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.bva-booking__weekdays{margin-bottom:6px}.bva-booking__weekdays span{min-height:26px;color:var(--booking-muted);place-items:center;font-size:.6875rem;font-weight:500;display:grid}.bva-booking__calendar button{aspect-ratio:1;min-height:44px;color:var(--booking-ink);font-variant-numeric:tabular-nums;background:0 0;border:1px solid #0000;padding:5px 0;font-size:.875rem;font-weight:500;transition:background .18s,border-color .18s,color .18s;position:relative}.bva-booking__calendar button:hover:not(:disabled){background:var(--booking-paper);border-color:var(--booking-line)}.bva-booking__calendar button[aria-current=date]:after{content:"";background:currentColor;border-radius:100%;width:4px;height:4px;position:absolute;bottom:4px;left:calc(50% - 2px)}.bva-booking__calendar button.is-selected,.bva-booking__calendar button.is-selected:hover{background:var(--booking-forest);border-color:var(--booking-forest);color:#fff}.bva-booking__calendar button:disabled{color:#b4bbbf}.bva-booking__native-date{display:none}.bva-booking__times{border-top:1px solid var(--booking-line);margin:24px 0 22px;padding-top:23px}.bva-booking__times-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.bva-booking__times-heading>span{color:var(--booking-muted);font-size:.6875rem}.bva-booking__date-label{color:var(--booking-muted);margin:7px 0 14px;font-size:.75rem;line-height:1.5}.bva-booking__hint{color:var(--booking-muted);margin:14px 0 0;font-size:.8125rem;line-height:1.7}.bva-booking__time-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.bva-booking__time-grid button{border:1px solid var(--booking-line);min-height:44px;color:var(--booking-ink);font-variant-numeric:tabular-nums;background:#fff;padding:8px 4px;font-size:.75rem;font-weight:500;transition:background .18s,border-color .18s}.bva-booking__time-grid button:hover{background:var(--booking-paper);border-color:var(--booking-forest)}.bva-booking__time-grid button.is-selected{background:var(--booking-lime);border-color:var(--booking-forest);color:var(--booking-ink)}.bva-booking .bva-booking__primary,.bva-booking .bva-booking__secondary{border:1px solid var(--booking-forest);background:var(--booking-forest);color:#fff;text-align:center;justify-content:center;align-items:center;width:100%;min-height:52px;padding:14px 20px;font-size:.875rem;font-weight:600;line-height:1.5;transition:background .18s,border-color .18s,color .18s;display:flex}.bva-booking__primary:hover:not(:disabled){background:#304c62}.bva-booking__primary:active:not(:disabled){background:#1b3042}.bva-booking__primary:disabled{color:#5e686f;background:#e4e8eb;border-color:#e4e8eb}.bva-booking .bva-booking__secondary{color:var(--booking-ink);background:#fff}.bva-booking .bva-booking__secondary:hover{background:var(--booking-paper)}.bva-booking__schedule-note{color:var(--booking-muted);text-align:center;margin:16px 0 0;font-size:.6875rem;line-height:1.7}.bva-booking__text-button{min-height:44px;color:var(--booking-ink);text-align:left;text-underline-offset:4px;background:0 0;border:0;justify-content:flex-start;align-items:center;gap:10px;padding:8px 0;font-size:.8125rem;font-weight:500;text-decoration:underline;display:inline-flex}.bva-booking__text-button:hover{color:#435d71}.bva-booking__back{margin:-7px 0 14px}.bva-booking__selection{border-top:1px solid var(--booking-line);border-bottom:1px solid var(--booking-line);flex-direction:column;gap:7px;margin:0 0 24px;padding:18px 0;display:flex}.bva-booking__selection span{color:var(--booking-muted);font-size:.75rem;line-height:1.6}.bva-booking__selection strong{letter-spacing:-.01em;font-variant-numeric:tabular-nums;font-size:1.0625rem;font-weight:700;line-height:1.5}.bva-booking__num{font-variant-numeric:tabular-nums;font-weight:700}.bva-booking__email{color:var(--booking-ink);overflow-wrap:anywhere;font-weight:600}.bva-booking__details fieldset{border:0;min-width:0;margin:0;padding:0}.bva-booking__fields{grid-template-columns:1fr 1fr;gap:0 16px;display:grid}.bva-booking__consent{min-height:44px;color:var(--booking-muted);cursor:pointer;align-items:flex-start;gap:11px;margin:2px 0 23px;font-size:.75rem;line-height:1.7;display:flex}.bva-booking__consent input{width:20px;height:20px;accent-color:var(--booking-forest);cursor:pointer;flex:0 0 20px;margin:1px 0 0}.bva-booking__consent a{color:var(--booking-ink)}.bva-booking__error{color:#7f372a;overflow-wrap:anywhere;background:#fff8f1;border:1px solid #d5b9a8;margin:0 0 22px;padding:14px 16px;font-size:.8125rem;line-height:1.7}.bva-booking__unavailable p,.bva-booking__loading p,.bva-booking__slot-retry p{color:var(--booking-muted);margin:10px 0 15px;font-size:.8125rem;line-height:1.7}.bva-booking__unavailable>a{align-items:center;min-height:44px;margin-top:12px;font-size:.875rem;font-weight:600;display:inline-flex}.bva-booking__loading{min-height:200px}.bva-booking__skeleton{background:#edf0f2;border-radius:2px;min-height:44px;display:block}.bva-booking__skeleton--large{background:#f2f4f5;min-height:160px}.bva-booking__success{padding:7px 0}.bva-booking__check{stroke:var(--booking-forest);stroke-width:1.5px;margin-bottom:24px}.bva-booking__check circle{fill:var(--booking-lime);stroke:none}.bva-booking__success h3{font-size:1.75rem}.bva-booking__success>p{color:var(--booking-muted);margin:15px 0 22px;font-size:.875rem;line-height:1.8}.bva-booking__success .bva-booking__urgent{font-size:.8125rem}.bva-booking__sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (max-width:600px){.bva-booking{padding:27px 20px}.bva-booking__title h3{font-size:1.4rem}.bva-booking__fields{grid-template-columns:1fr;gap:0}.bva-booking__field input:not([type=checkbox]),.bva-booking__field select,.bva-booking__field textarea,.bva-booking__selection strong{font-size:1rem}}@media (max-width:440px){.bva-booking{padding:24px 8px}.bva-booking__title,.bva-booking__steps,.bva-booking__details,.bva-booking__success,.bva-booking__error,.bva-booking__schedule>.bva-booking__field,.bva-booking__times,.bva-booking__schedule>.bva-booking__primary,.bva-booking__schedule-note,.bva-booking__unavailable{margin-inline:8px}.bva-booking__schedule>.bva-booking__primary{width:calc(100% - 16px)}.bva-booking__weekdays,.bva-booking__calendar{gap:2px}.bva-booking__month{padding-inline:8px}.bva-booking__steps{gap:12px}.bva-booking__steps li{font-size:.75rem}}@media (max-width:360px){.bva-booking__calendar-shell{display:none}.bva-booking__native-date{display:block}.bva-booking__time-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bva-booking__time-grid button{font-size:.8125rem}.bva-booking__title h3{font-size:1.3rem}.bva-booking__success h3{font-size:1.5rem}.bva-booking__steps{gap:10px;margin:22px 0 20px}.bva-booking__steps li{gap:7px}}@media (prefers-reduced-motion:reduce){.bva-booking *,.bva-booking :before,.bva-booking :after{transition:none}}
