.call-booking{color:#f1f6f3;background:#101a15;border:1px solid #ffffff24;border-radius:20px;padding:0;width:min(600px,calc(100% - 32px));max-width:calc(100% - 32px);max-height:calc(100dvh - 32px);overflow:auto;box-shadow:0 24px 72px #0008;font:400 16px/1.5 var(--font-geist,Arial,sans-serif)}
.call-booking::backdrop{background:#020805bf;backdrop-filter:blur(8px)}.call-shell{padding:28px;min-width:0}.call-heading,.call-step-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.call-heading h2{font-size:32px;line-height:1.2;letter-spacing:-.04em;margin:4px 0 0;font-weight:600}.call-eyebrow{font-size:11px;letter-spacing:.14em;color:#00c878;margin:0}.call-close{font:inherit;font-size:28px;border:1px solid #ffffff24;border-radius:12px;background:transparent;color:inherit;flex:0 0 44px;height:44px;cursor:pointer}.call-intro{margin:16px 0 8px;color:#d0dad4}.call-meta{font-size:14px;color:#a9c5b6;margin:0 0 24px}.call-content{min-width:0}.call-booking label,.call-times legend{display:block;font-weight:500;font-size:14px}.call-booking input,.call-booking textarea,.call-booking select{box-sizing:border-box;display:block;width:100%;min-width:0;max-width:100%;color:#f1f6f3;background:#080d0b;border:1px solid #ffffff30;border-radius:12px;padding:12px;font:inherit;margin-top:6px;color-scheme:dark}.call-booking textarea{resize:vertical}.call-booking a{color:#75e7b3}.call-booking .call-help{display:block;font-size:13px;line-height:1.55;font-weight:400;color:#bdcfc3;margin:8px 0 16px}.call-times{border:0;padding:0;margin:22px 0}.call-times legend{margin-bottom:10px}#call-slots{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}#call-slots>p{grid-column:1/-1;margin:0}.call-slot{border:1px solid #ffffff30;border-radius:12px;background:#ffffff08;color:inherit;padding:10px 4px;font:inherit;cursor:pointer}.call-slot[aria-pressed=true]{background:#00c878;color:#031b0e;border-color:#00c878}.call-primary,.call-secondary{box-sizing:border-box;width:100%;display:block;text-align:center;border-radius:16px;padding:13px 16px;font:500 15px/1.5 var(--font-geist,Arial,sans-serif);cursor:pointer;text-decoration:none}.call-booking .call-primary{background:#00c878;color:#031b0e;border:1px solid #00c878}.call-secondary{background:transparent;color:inherit;border:1px solid #ffffff30;margin-top:10px}.call-booking button:disabled{opacity:.45;cursor:default}.call-fields{display:grid;gap:16px}.call-step-heading h3{font-size:20px;font-weight:600;margin:0}.call-back{background:transparent;border:0;color:#75e7b3;padding:8px;font:inherit;cursor:pointer}.call-summary{background:#ffffff08;padding:12px;border-radius:12px;margin:12px 0 20px;font-size:14px}.call-fields .call-help{margin-bottom:0}.call-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.call-error{color:#ffb9ad;font-size:14px;overflow-wrap:anywhere;margin:12px 0 0}.call-error:empty{display:none}.call-footer{margin-top:24px;padding-top:20px;border-top:1px solid #ffffff1a;text-align:center}.call-footer a{display:inline-flex;flex-direction:column;align-items:center;gap:7px;text-decoration:none;color:#bdcfc3}.call-footer span{font-size:8px;letter-spacing:.12em}.call-footer img{display:block;width:148px;height:auto}.call-success{text-align:center}.call-success h3{font-size:26px;margin:12px 0}.call-tick{display:inline-grid;place-items:center;width:48px;height:48px;border-radius:50%;color:#00c878;background:#00c87818;font-size:28px}.call-success:focus{outline:none}.call-booking :is(button,a,input,textarea,select):focus-visible{outline:2px solid #91f8c9;outline-offset:3px}.call-booking form>.call-help:last-child{margin-bottom:0}@media(max-width:480px){.call-shell{padding:20px}.call-heading h2{font-size:28px}#call-slots{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:350px){.call-shell{padding:16px}}
/* Keep evening/weekend choices scrollable without pushing Continue far below them. */
#call-slots{max-height:min(320px,35dvh);overflow-y:auto;overscroll-behavior:contain;padding:4px;margin:-4px;scrollbar-color:#4b6a58 #101a15}



/* Booked date chooser: generated */
.call-booking .booking-calendar{border:1px solid var(--line);border-radius:16px;padding:12px;margin:20px 0 12px}
.call-booking .calendar-navigation{display:flex;align-items:center;justify-content:space-between;gap:8px}
.call-booking .calendar-navigation h3{margin:0;font:600 16px/1.4 var(--sans)}
.call-booking .calendar-navigation button{width:44px;height:44px;border:0;background:transparent;color:var(--link);font-size:26px}
.call-booking .calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px}
.call-booking .calendar-weekday{text-align:center;font-size:11px;color:var(--muted);padding:8px 0}
.call-booking .calendar-day{min-width:0;min-height:44px;padding:0;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--ink)}
.call-booking .calendar-day[aria-current="date"]{border-color:var(--link)}
.call-booking .calendar-day.selected{background:var(--link);color:#fff}
.call-booking .calendar-day:disabled,.call-booking .calendar-navigation button:disabled{opacity:.3;cursor:not-allowed}
.call-booking .calendar-day:not(:disabled):not(.selected):hover{background:var(--blush)}
.call-booking .calendar-day:disabled{position:relative;opacity:1;color:color-mix(in srgb,var(--ink) 30%,var(--paper))}
.call-booking .calendar-day:disabled::after{width:24px;max-width:70%}
.call-booking .date-chooser{margin:20px 0 12px}
.call-booking .date-chooser-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:14px}
.call-booking .date-chooser-heading .text-button{font-size:12px;white-space:nowrap}
.call-booking .date-week{display:flex;align-items:center;gap:2px;margin:10px 0 18px;min-width:0}
.call-booking .date-strip{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;flex:1;min-width:0}
.call-booking .date-chip{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:68px;border:0;border-radius:30px;background:transparent;color:var(--ink);font:inherit;padding:8px 0;box-shadow:none!important}
.call-booking .date-chip span{font-size:11px;color:var(--muted)}
.call-booking .date-chip strong{font-size:14px;font-weight:500}
.call-booking .date-chip[aria-pressed="true"]{background:var(--business-primary-accent,var(--link));color:#fff}
.call-booking .date-chip[aria-pressed="true"] span{color:inherit}
.call-booking .week-arrow{flex:none;width:24px;padding:0;min-height:44px;border:0;background:transparent;color:var(--link);font-size:24px;box-shadow:none!important}
.call-booking .week-arrow:disabled{opacity:.35}
.call-booking .date-strip{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(44px,1fr);overflow-x:auto;scrollbar-width:thin;scroll-snap-type:x proximity}
.call-booking .date-chip{scroll-snap-align:start}
.call-booking .week-arrow{width:44px}
.call-booking .date-chooser-heading [data-action="calendar-toggle"]{display:inline-flex;align-items:center;justify-content:center;gap:6px}
.call-booking .date-chooser-heading [data-action="calendar-toggle"] svg{width:16px;height:16px;flex:0 0 16px}
.call-booking .date-chooser{--ink:#f1f6f3;--muted:#bdcfc3;--link:#00c878;--line:#ffffff30;--paper:#101a15;--sans:var(--font-geist,Arial,sans-serif);--blush:#ffffff08;margin-top:8px}.call-booking .date-chooser [hidden]{display:none!important}.call-booking .date-chooser .text-button{display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;color:#75e7b3;font:inherit;font-size:12px;padding:8px 0}.call-booking .date-chooser svg{width:16px;height:16px}.call-booking .date-label{font-size:14px;margin:0}.call-booking .date-strip{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(44px,1fr);overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:thin}.call-booking .date-chip{scroll-snap-align:start}.call-booking .week-arrow{width:36px}.call-booking .date-chip[aria-pressed="true"]{color:#031b0e}
