/* booking presentation rules for Capture Media's black, red and white interface; responsive and print rules follow. */
.booking-consent{display:flex;gap:12px;align-items:flex-start;font-size:.82rem;line-height:1.6;cursor:pointer}
.booking-consent input{width:auto;min-width:18px;height:18px;margin:4px 0 0;accent-color:#FC2021;flex:none}
.booking-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.booking-notice{overflow-wrap:anywhere;line-height:1.7;display:block}
#booking-submit:disabled{opacity:.65;cursor:wait}
#booking-another[hidden]{display:none}
#bookingForm [id]:focus-visible{outline:2px solid #FC2021;outline-offset:3px}
.booking-wrap fieldset{border:1px solid #333;border-radius:12px;padding:20px;margin:0 0 26px;min-width:0}
.booking-wrap legend{font-weight:700;color:#fff;padding:0 8px;font-size:1.05rem}
.booking-session{margin:16px 0;padding:14px 0;border-top:1px solid #333}
.booking-policy{white-space:normal;background:#111;padding:16px;border-radius:8px;font-size:.85rem;line-height:1.6}
.booking-wrap .field input[type=checkbox]{width:auto;flex-shrink:0}
@media(max-width:600px){.booking-wrap fieldset{padding:14px}.booking-wrap .fieldgrid{grid-template-columns:1fr}}
/* The wizard keeps only one section visible, with a short review and clear progress. */
#bookingForm [hidden]{display:none!important}
.booking-progress{list-style:none;display:flex;gap:8px;padding:0;margin:0 0 26px;font-size:.78rem;line-height:1.5}
.booking-progress li{flex:1;padding:10px 5px;border-bottom:3px solid #333;color:#aaa}
.booking-progress [aria-current=step]{border-color:#FC2021;color:#fff;font-weight:700}
.booking-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end}
.booking-extras{padding:16px 0;border-top:1px solid #333;margin:16px 0}
.booking-extras summary{cursor:pointer;font-weight:600;margin-bottom:16px}
.booking-review{margin:0 0 22px;overflow-wrap:anywhere}
.booking-review>div{padding:9px 0;border-bottom:1px solid #333}
.booking-review dt{font-size:.72rem;color:#aaa;margin-bottom:4px}
.booking-review dd{margin:0;font-size:.88rem;line-height:1.6}
#booking-receipt{padding:16px 0}
@media(max-width:600px){.booking-progress{font-size:.7rem;gap:4px}.booking-actions .btn{flex:1;justify-content:center}}

#bookingNotice:empty{display:none}
#bookingForm,#bookingForm legend,#booking-receipt{scroll-margin-top:110px}
