.booking-shell{align-items:start}
.booking-shell fieldset{border:0;border-top:1px solid rgba(16,43,66,.18);margin:0 0 1.35rem;padding:1.2rem 0 0}
.booking-shell legend{font-size:1.08rem;font-weight:700;padding:0 0 .7rem}
.booking-steps{color:#c84420;font-weight:700;margin:0 0 1.5rem}
.booking-steps span{color:#0a1f44;margin:0 .35rem}
.booking-shell input,.booking-shell select{width:100%;box-sizing:border-box}
.booking-result{min-width:0}
.booking-result-header{padding-bottom:.1rem}
.booking-result-header h2{margin:0;font-size:1.45rem;overflow-wrap:anywhere}
.booking-result #booking-local-summary{color:var(--muted);font-size:.9rem;line-height:1.45;margin:.35rem 0 0;overflow-wrap:anywhere}
.booking-result #booking-local-summary p{margin:0}
.booking-panel{border-top:1px solid rgba(16,43,66,.18);margin-top:1.1rem;padding-top:.9rem;min-width:0}
.booking-panel h3{font-size:1.08rem;line-height:1.25;margin:.1rem 0 .3rem}
.booking-panel>p{margin:.35rem 0;overflow-wrap:anywhere}
#booking-decp-period,#booking-boamp-status{color:var(--muted);font-size:.88rem}
.booking-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;margin:.8rem 0 .65rem;min-width:0}
.booking-metrics>div{background:#0a1f44;color:#fff;min-width:0;padding:.65rem .7rem}
.booking-metrics strong,.booking-metrics span{display:block;min-width:0}
.booking-metrics strong{color:#fff;font-size:clamp(.92rem,5.2vw,1.25rem);line-height:1.1;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.booking-metrics span{font-size:.73rem;line-height:1.25;margin-top:.25rem;overflow-wrap:anywhere}
.booking-fineprint{color:var(--muted);font-size:.78rem;line-height:1.35;margin:.45rem 0}
.booking-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));gap:.6rem;margin-top:.65rem}
.booking-card{background:#f5f7fb;border-left:3px solid #c84420;min-width:0;padding:.7rem .8rem}
.booking-card h4{font-size:.97rem;line-height:1.3;margin:0 0 .25rem;overflow-wrap:anywhere}
.booking-card p{font-size:.86rem;line-height:1.35;margin:.18rem 0;overflow-wrap:anywhere}
.booking-card a{display:inline-block;margin-top:.3rem;font-weight:700;overflow-wrap:anywhere}
.booking-sources{border-top:1px solid rgba(16,43,66,.18);margin-top:1rem;padding-top:.65rem;font-size:.8rem;color:var(--muted)}
.booking-sources summary{cursor:pointer;color:var(--ink);font-size:.83rem;font-weight:400}
.booking-sources p{margin:.45rem 0 0;overflow-wrap:anywhere}
.booking-orientation{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.2rem}
.booking-orientation a[hidden]{display:none}
#booking-result-copy{color:var(--muted);font-size:.88rem;line-height:1.45;margin:.7rem 0 0;overflow-wrap:anywhere}
.booking-shell fieldset,.booking-panel,.booking-metrics>div,.booking-card{min-width:0}
.booking-shell [hidden]{display:none!important}
.booking-panel details{font-size:.82rem;margin-bottom:.7rem}
.booking-panel summary{cursor:pointer}
@media(max-width:640px){.booking-orientation .button{width:100%;text-align:center;box-sizing:border-box}}
