.booking-page{--snap-accent:#26372d;--snap-signal:#dca548;--snap-surface:#f4efe3;box-sizing:border-box;background:radial-gradient(circle at 20% 0%, color-mix(in srgb, var(--snap-signal) 20%, transparent), transparent 38%), var(--snap-surface);color:#17201a;font-synthesis:none;min-height:100dvh;padding:48px 20px 32px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.booking-page *,.booking-page :before,.booking-page :after{box-sizing:border-box}.booking-page button,.booking-page a{font:inherit}.booking-page button{color:inherit}.booking-page button:focus-visible,.booking-page a:focus-visible,.booking-page summary:focus-visible{outline:3px solid var(--snap-signal);outline-offset:3px}.booking-page--embed{background:0 0;min-height:100vh;padding:0}.booking-shell{border:1px solid color-mix(in srgb, var(--snap-accent) 18%, transparent);background:#fffdfa;border-radius:28px;width:min(100%,470px);margin:0 auto;overflow:hidden;box-shadow:0 24px 70px #1c221d21}.booking-page--embed .booking-shell{box-shadow:none;border-radius:20px}.tenant-header{color:#fff;background:var(--snap-accent);justify-content:space-between;align-items:flex-start;gap:16px;padding:22px 24px;display:flex}.tenant-header div{gap:3px;display:grid}.tenant-header strong{font-size:1rem}.tenant-header span{color:#ffffffb8;font-size:.76rem}.prototype-badge{text-transform:uppercase;letter-spacing:.08em;border:1px solid #ffffff47;border-radius:999px;padding:5px 8px}.journey{min-height:470px;padding:28px 24px 30px}.journey h2{letter-spacing:-.04em;margin:0;font-size:clamp(1.65rem,8vw,2.25rem);line-height:1.05}.step-label{color:#655f52;letter-spacing:.12em;text-transform:uppercase;margin:0 0 10px;font-size:.73rem;font-weight:800}.supporting-copy,.centred-state>p:not(.step-label),.notice-card p{color:#666a64;line-height:1.55}.choice-stack{gap:10px;margin-top:24px;display:grid}.choice-button{text-align:left;cursor:pointer;background:#fff;border:1px solid #d8d7d0;border-radius:14px;grid-template-columns:1fr auto;align-items:center;gap:4px 16px;width:100%;padding:17px 16px;transition:transform .15s,border-color .15s;display:grid}.choice-button:hover{border-color:var(--snap-accent);transform:translateY(-1px)}.choice-button--selected{border-color:var(--snap-accent);background:color-mix(in srgb, var(--snap-signal) 14%, #fff)}.choice-button>span:first-child{gap:4px;display:grid}.choice-description{color:#686b65;font-size:.82rem;line-height:1.35}.choice-button small{color:#73766f;grid-column:1}.choice-arrow{color:var(--snap-accent);grid-area:1/2/span 2;font-size:1.2rem}.selection-bar{color:#676b65;justify-content:space-between;align-items:center;gap:12px;margin-top:18px;padding:12px 4px 2px;font-size:.82rem;display:flex}.selection-bar strong{color:var(--snap-accent);white-space:nowrap}.text-button{color:var(--snap-accent);cursor:pointer;background:0 0;border:0;padding:0;font-weight:750}.journey section>.text-button:first-child{margin-bottom:24px}.slot-grid{grid-template-columns:repeat(3,1fr);gap:8px;margin:24px 0 16px;display:grid}.slot-button{cursor:pointer;background:#fff;border:1px solid #d7d6cf;border-radius:13px;gap:5px;padding:15px 8px;display:grid}.slot-button:hover,.slot-button[aria-pressed=true]{border-color:var(--snap-accent);background:color-mix(in srgb, var(--snap-signal) 16%, #fff)}.slot-button span{color:#61655e;font-size:.82rem}.primary-button,.secondary-button,.danger-button{cursor:pointer;border-radius:999px;min-height:48px;padding:12px 18px;font-weight:800}.booking-page .primary-button{border:1px solid var(--snap-accent);background:var(--snap-accent);color:#fff}.booking-page--embed .primary-button{border-color:var(--snap-signal);background:var(--snap-signal);color:var(--snap-accent)}.secondary-button{color:var(--snap-accent);background:#fff;border:1px solid #cbc9bf}.danger-button{color:#fff;background:#9b382e;border:1px solid #9b382e}.primary-button:disabled{opacity:.45;cursor:not-allowed}.full-width{width:100%;margin-top:12px}.notice-card,.upcoming-card,.usual-card{background:color-mix(in srgb, var(--snap-surface) 68%, #fff);border-radius:16px;margin:24px 0 18px;padding:18px}.notice-card p{margin-bottom:0}.summary-list{border-top:1px solid #deddd6;margin:24px 0 18px}.summary-list div{border-bottom:1px solid #deddd6;justify-content:space-between;gap:18px;padding:14px 0;display:flex}.summary-list dt{color:#73766f}.summary-list dd{text-align:right;margin:0;font-weight:750}.summary-services{gap:4px;margin:0;padding:0;list-style:none;display:grid}.fine-print{color:#757871;text-align:center;margin:12px 12px 0;font-size:.75rem;line-height:1.45}.centred-state{text-align:center;padding-top:28px}.centred-state .primary-button,.centred-state .secondary-button{margin-top:12px}.status-mark{background:var(--snap-signal);width:52px;height:52px;color:var(--snap-accent);border-radius:50%;place-items:center;margin:0 auto 22px;font-size:1.45rem;font-weight:900;display:grid}.status-mark.quiet{background:color-mix(in srgb, var(--snap-accent) 10%, #fff)}.status-banner{background:color-mix(in srgb, var(--snap-signal) 18%, #fff);border-radius:10px;padding:10px 12px;font-weight:750}.upcoming-card{gap:6px;display:grid}.upcoming-card small,.usual-card span{color:#6d706a}.inline-actions{gap:18px;margin-top:14px;display:flex}.danger-text{color:#92382f}.usual-card{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;display:flex}.usual-card span{text-transform:uppercase;letter-spacing:.07em;width:100%;font-size:.78rem}.booking-footer{color:#7b7d76;border-top:1px solid #e3e1d9;justify-content:space-between;gap:12px;padding:15px 24px;font-size:.68rem;display:flex}.scenario-panel{border:1px dashed color-mix(in srgb, var(--snap-accent) 30%, transparent);color:#555b55;background:#ffffff8c;border-radius:14px;width:min(100%,470px);margin:14px auto 0;padding:12px 16px;font-size:.78rem}.scenario-panel summary{color:var(--snap-accent);cursor:pointer;font-weight:800}.scenario-panel p{margin:10px 0}.scenario-actions{flex-wrap:wrap;gap:7px;display:flex}.scenario-actions button{cursor:pointer;background:#fff;border:1px solid #cbc9c0;border-radius:999px;padding:7px 10px}@media (max-width:620px){.booking-page--full{padding:0}.booking-page--full .booking-shell{min-height:100dvh;box-shadow:none;border:0;border-radius:0}.booking-page--full .scenario-panel{border-width:1px 0 0;border-radius:0;width:100%;margin:0}.booking-footer{flex-direction:column}}@media (prefers-reduced-motion:reduce){.booking-page *,.booking-page :before,.booking-page :after{scroll-behavior:auto!important;transition:none!important}}
