/* SX Booking — self-contained styles. Used by the office pages AND by the embed on brand sites (which have
   no Bootstrap), so nothing here assumes a framework. Brand sites override the accent via --sxb-accent. */
.sxb{--sxb-accent:#2457d6;--sxb-text:#1b1b1b;--sxb-muted:#666;--sxb-line:#e3e3e3;--sxb-bg:#fff;
  color:var(--sxb-text);max-width:860px;margin:0 auto;padding:8px 0 48px;font:16px/1.5 inherit;box-sizing:border-box}
.sxb *,.sxb *::before,.sxb *::after{box-sizing:inherit}
.sxb h1,.sxb h2{margin:0 0 8px;line-height:1.25}.sxb h1{font-size:28px}.sxb h2{font-size:22px}
.sxb-meta,.sxb-tz,.sxb-muted{color:var(--sxb-muted)}.sxb-tz{font-size:13px;display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:4px 0 8px}
.sxb-desc{margin:0 0 16px}
.sxb-pick{display:grid;grid-template-columns:1fr;gap:24px;margin-top:16px}
@media(min-width:720px){.sxb-pick{grid-template-columns:1fr 1fr}}
.sxb-nav{display:flex;align-items:center;gap:12px;margin-bottom:6px}
.sxb-day{margin:10px 0}.sxb-day h4{font-size:14px;margin:0 0 6px;font-weight:600}
.sxb-btn{display:inline-block;font:inherit;font-size:14px;line-height:1.2;padding:8px 14px;border-radius:8px;border:1px solid var(--sxb-line);
  background:var(--sxb-bg);color:var(--sxb-text);cursor:pointer;text-decoration:none}
.sxb-btn:hover{border-color:var(--sxb-accent);color:var(--sxb-accent)}
.sxb-btn:disabled{opacity:.55;cursor:default}
.sxb-btn-primary{background:var(--sxb-accent);border-color:var(--sxb-accent);color:#fff}.sxb-btn-primary:hover{color:#fff;filter:brightness(.95)}
.sxb-btn-danger{background:#c62828;border-color:#c62828;color:#fff}.sxb-btn-danger:hover{color:#fff}
.sxb-btn-sm{padding:4px 10px}
.sxb-slot{margin:0 6px 6px 0;min-width:84px}
.sxb-field{margin:0 0 14px}.sxb-field label{display:block;font-size:14px;font-weight:600;margin-bottom:4px}
.sxb-input{display:block;width:100%;font:inherit;font-size:15px;padding:9px 12px;border:1px solid var(--sxb-line);border-radius:8px;background:var(--sxb-bg);color:var(--sxb-text)}
.sxb-input:focus{outline:2px solid var(--sxb-accent);outline-offset:1px;border-color:var(--sxb-accent)}
textarea.sxb-input{min-height:88px;resize:vertical}
.sxb-tzsel{font:inherit;font-size:13px;padding:3px 6px;border:1px solid var(--sxb-line);border-radius:6px;background:var(--sxb-bg);color:var(--sxb-text);max-width:100%}
.sxb-error{color:#c62828;margin:8px 0}
.sxb-hp{position:absolute;left:-9999px;top:-9999px;height:0;overflow:hidden}
.sxb-list{list-style:none;padding:0;margin:0}.sxb-list li{padding:10px 0;border-bottom:1px solid var(--sxb-line)}.sxb-list a{color:var(--sxb-accent)}
.sxb-done{padding:16px;border:1px solid #cfe3cf;background:#f3faf3;border-radius:8px}
.sxb-chosen{margin:0 0 14px}.sxb-chosen a{margin-left:8px;color:var(--sxb-accent)}
.sxb-footer{font-size:12px;color:var(--sxb-muted);margin-top:16px}.sxb-footer a{color:inherit}
.sxb [hidden]{display:none!important}
