.bsb-booking-widget{--bsb-accent:#caff29;--bsb-bg:#0b0c0b;--bsb-panel:#151715;--bsb-fg:#f4f5f0;--bsb-muted:#a7aaa1;--bsb-line:rgba(244,245,240,.17);--bsb-gutter:clamp(18px,3.5vw,42px);width:100%;padding:clamp(22px,4vw,52px);background:var(--bsb-bg);color:var(--bsb-fg);font:400 15px/1.55 system-ui,-apple-system,"Segoe UI",Arial,sans-serif;box-sizing:border-box;isolation:isolate}.bsb-booking-widget *{box-sizing:border-box}.bsb-booking-widget button,.bsb-booking-widget input,.bsb-booking-widget select,.bsb-booking-widget textarea{font:inherit}.bsb-booking-widget button{color:inherit}.bsb-booking-widget a{color:var(--bsb-accent)}.bsb-booking-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,.55fr);align-items:end;gap:24px 50px;margin:0 0 35px}.bsb-booking-heading .bsb-kicker{grid-column:1/-1;margin-bottom:-35px;color:var(--bsb-accent);font-size:9px;font-weight:900;letter-spacing:.18em;text-transform:uppercase}.bsb-booking-heading h2{margin:0;font-family:Impact,"Arial Black",system-ui,sans-serif;font-size:clamp(48px,7.3vw,98px);font-weight:900;letter-spacing:-.035em;line-height:.84;text-transform:uppercase}.bsb-booking-heading h2 span{color:var(--bsb-accent)}.bsb-booking-heading p{max-width:380px;margin:0 0 4px;color:rgba(244,245,240,.7);font-size:13px;line-height:1.8}.bsb-booking-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(250px,.65fr);align-items:start;gap:clamp(18px,3vw,42px)}.bsb-booking-main{min-width:0}.bsb-step{margin:0 0 20px;padding:clamp(19px,2.7vw,31px);border:1px solid var(--bsb-line);background:var(--bsb-panel)}.bsb-step-title{display:flex;align-items:flex-start;gap:16px;margin:0 0 23px}.bsb-step-title>span{display:grid;width:35px;height:35px;flex:0 0 35px;place-items:center;background:var(--bsb-accent);color:var(--bsb-bg);font-size:11px;font-weight:950}.bsb-step-title h3{margin:0 0 5px;font-family:Impact,"Arial Black",system-ui,sans-serif;font-size:clamp(23px,3vw,32px);font-weight:900;letter-spacing:-.02em;line-height:1;text-transform:uppercase}.bsb-step-title p{margin:0;color:var(--bsb-muted);font-size:11px}.bsb-service-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.bsb-service-option{display:flex;min-height:99px;align-items:center;justify-content:space-between;gap:12px;padding:15px;text-align:left;border:1px solid rgba(244,245,240,.2);background:#101210;cursor:pointer;transition:border-color .18s ease,background .18s ease,transform .18s ease}.bsb-service-option:hover{border-color:var(--bsb-accent);transform:translateY(-2px)}.bsb-service-option.is-selected{border-color:var(--bsb-accent);background:#1d2410}.bsb-service-option strong,.bsb-service-option small{display:block}.bsb-service-code{display:block;margin:0 0 7px;color:var(--bsb-accent);font-size:8px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.bsb-service-option strong{font-size:13px;font-weight:850}.bsb-service-option small{margin-top:5px;color:var(--bsb-muted);font-size:10px;line-height:1.5}.bsb-check{display:grid;width:22px;height:22px;flex:0 0 22px;place-items:center;border:1px solid rgba(244,245,240,.35);border-radius:50%;color:transparent;font-size:12px}.bsb-service-option.is-selected .bsb-check{border-color:var(--bsb-accent);background:var(--bsb-accent);color:var(--bsb-bg)}.bsb-calendar-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:17px}.bsb-calendar-head strong{color:var(--bsb-accent);font-size:12px;font-weight:850;text-align:center;text-transform:capitalize}.bsb-calendar-head button{display:grid;width:36px;height:36px;flex:0 0 36px;place-items:center;border:1px solid var(--bsb-line);background:transparent;font-size:21px;cursor:pointer}.bsb-calendar-head button:hover:not(:disabled){border-color:var(--bsb-accent);color:var(--bsb-accent)}.bsb-calendar-head button:disabled{opacity:.35;cursor:not-allowed}.bsb-weekdays,.bsb-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.bsb-weekdays{margin:0 0 8px}.bsb-weekdays span{color:var(--bsb-muted);font-size:8px;font-weight:850;text-align:center;text-transform:uppercase}.bsb-day{display:grid;min-height:39px;place-items:center;padding:0;border:1px solid transparent;background:transparent;color:rgba(244,245,240,.52);font-size:11px;cursor:pointer;transition:background .18s ease,border-color .18s ease,color .18s ease}.bsb-day.has-slots{border-color:rgba(244,245,240,.2);color:var(--bsb-fg)}.bsb-day.has-slots:hover{border-color:var(--bsb-accent);color:var(--bsb-accent)}.bsb-day.is-today{border-color:var(--bsb-accent)}.bsb-day.is-selected,.bsb-day.is-selected:hover{border-color:var(--bsb-accent);background:var(--bsb-accent);color:var(--bsb-bg);font-weight:950}.bsb-day:disabled{opacity:.32;cursor:not-allowed}.bsb-day.is-outside{pointer-events:none}.bsb-help{margin:15px 0 22px;color:var(--bsb-muted);font-size:9px;line-height:1.6}.bsb-times-heading{display:flex;align-items:baseline;justify-content:space-between;gap:14px;margin-bottom:11px;padding-top:15px;border-top:1px solid var(--bsb-line)}.bsb-times-heading strong{font-size:10px;font-weight:900;letter-spacing:.11em;text-transform:uppercase}.bsb-times-heading span{color:var(--bsb-muted);font-size:9px;text-align:right}.bsb-times{display:flex;flex-wrap:wrap;gap:7px}.bsb-time-option{min-width:74px;padding:9px 12px;border:1px solid rgba(244,245,240,.25);background:transparent;color:var(--bsb-fg);font-size:10px;font-weight:800;cursor:pointer;transition:background .18s ease,color .18s ease,border-color .18s ease}.bsb-time-option:hover,.bsb-time-option.is-selected{border-color:var(--bsb-accent);background:var(--bsb-accent);color:var(--bsb-bg)}.bsb-empty{width:100%;margin:0;color:var(--bsb-muted);font-size:10px}.bsb-fields-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.bsb-field{display:grid;gap:7px;margin:0 0 15px;color:var(--bsb-fg)}.bsb-field>span{font-size:8px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.bsb-field input,.bsb-field select,.bsb-field textarea{width:100%;min-height:46px;padding:11px 12px;border:1px solid rgba(244,245,240,.25);border-radius:0;outline:0;background:#0d0f0d;color:var(--bsb-fg);font-size:11px}.bsb-field textarea{min-height:85px;resize:vertical}.bsb-field input:focus,.bsb-field select:focus,.bsb-field textarea:focus{border-color:var(--bsb-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--bsb-accent) 20%,transparent)}.bsb-field select option{background:#0d0f0d;color:var(--bsb-fg)}.bsb-privacy{display:flex;align-items:flex-start;gap:9px;margin:0 0 17px;color:var(--bsb-muted);font-size:9px;line-height:1.6}.bsb-privacy input{width:15px;height:15px;flex:0 0 15px;margin:1px 0 0;accent-color:var(--bsb-accent)}.bsb-privacy a{color:var(--bsb-accent);text-underline-offset:3px}.bsb-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.bsb-submit-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:17px;border-top:1px solid var(--bsb-line)}.bsb-submit-row p{max-width:270px;margin:0;color:var(--bsb-muted);font-size:9px;line-height:1.65}.bsb-button{display:inline-flex;min-height:46px;align-items:center;justify-content:center;gap:14px;padding:0 17px;border:1px solid var(--bsb-accent);background:var(--bsb-accent);color:var(--bsb-bg)!important;font-size:9px;font-weight:950;letter-spacing:.11em;text-transform:uppercase;cursor:pointer;transition:transform .18s ease,background .18s ease,color .18s ease}.bsb-button:hover{background:transparent;color:var(--bsb-accent)!important;transform:translateY(-2px)}.bsb-button:disabled{opacity:.65;cursor:wait;transform:none}.bsb-status{display:none;margin-top:13px;padding:12px 14px;border-left:3px solid var(--bsb-accent);background:rgba(202,255,41,.08);color:var(--bsb-fg);font-size:11px;line-height:1.65}.bsb-status.is-visible{display:block}.bsb-status.is-error{border-left-color:#ff7474;background:rgba(255,116,116,.08)}.bsb-summary{position:sticky;top:28px;padding:clamp(20px,2.6vw,30px);background:#111310;border:1px solid var(--bsb-line)}.bsb-summary-kicker{color:var(--bsb-accent);font-size:8px;font-weight:950;letter-spacing:.16em;text-transform:uppercase}.bsb-summary h3{margin:13px 0 9px;font-family:Impact,"Arial Black",system-ui,sans-serif;font-size:clamp(30px,4vw,47px);font-weight:900;letter-spacing:-.025em;line-height:.88;text-transform:uppercase}.bsb-summary>p{margin:0 0 23px;color:var(--bsb-muted);font-size:10px;line-height:1.65}.bsb-summary dl{margin:0}.bsb-summary dl>div{display:flex;justify-content:space-between;gap:15px;padding:12px 0;border-top:1px solid var(--bsb-line)}.bsb-summary dt{color:var(--bsb-muted);font-size:9px;font-weight:750}.bsb-summary dd{max-width:58%;margin:0;color:var(--bsb-fg);font-size:9px;font-weight:850;text-align:right}.bsb-summary-foot{margin-top:18px;padding-top:13px;border-top:1px solid var(--bsb-line);color:var(--bsb-accent);font-size:8px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.bsb-alert{padding:18px;border:1px solid var(--bsb-line);background:var(--bsb-panel);color:var(--bsb-fg)}.bsb-booking-widget :focus-visible{outline:2px solid var(--bsb-accent);outline-offset:3px}
@media(max-width:900px){.bsb-booking-layout{grid-template-columns:minmax(0,1fr) minmax(225px,.65fr);gap:18px}.bsb-booking-heading{gap:20px 32px}.bsb-service-list{grid-template-columns:1fr}}
@media(max-width:700px){.bsb-booking-widget{padding:20px}.bsb-booking-heading{grid-template-columns:1fr;gap:15px;margin-bottom:25px}.bsb-booking-heading .bsb-kicker{grid-column:auto;margin:0}.bsb-booking-heading h2{font-size:clamp(48px,12vw,78px)}.bsb-booking-heading p{max-width:540px}.bsb-booking-layout{grid-template-columns:1fr}.bsb-summary{position:static;grid-row:1}.bsb-step{padding:17px}.bsb-step-title{gap:11px}.bsb-service-list{grid-template-columns:repeat(2,minmax(0,1fr))}.bsb-fields-two{grid-template-columns:1fr;gap:0}.bsb-submit-row{align-items:stretch;flex-direction:column}.bsb-submit-row p{max-width:none}.bsb-button{width:100%}}
@media(max-width:430px){.bsb-service-list{grid-template-columns:1fr}.bsb-weekdays,.bsb-days{gap:3px}.bsb-day{min-height:35px}.bsb-times-heading{align-items:flex-start;flex-direction:column;gap:4px}.bsb-times-heading span{text-align:left}.bsb-time-option{min-width:calc(33.333% - 5px);flex:1}.bsb-calendar-head strong{font-size:10px}.bsb-summary dd{max-width:60%}}
@media(prefers-reduced-motion:reduce){.bsb-booking-widget *{scroll-behavior:auto!important;transition-duration:.01ms!important}}
