
.hpb-booking{max-width:850px;margin:30px auto;font-family:inherit;color:#111}
.hpb-heading{margin-bottom:22px}.hpb-heading h2{text-transform:uppercase;margin:0 0 8px}
.hpb-step{border:1px solid #ddd;margin:0 0 12px;background:#fff}
.hpb-step-header{width:100%;border:0;background:#111;color:#fff;display:flex;align-items:center;gap:14px;text-align:left;padding:16px 18px;cursor:pointer}
.hpb-number{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#ff5a0a;font-weight:700}
.hpb-step-header strong,.hpb-step-header small{display:block}.hpb-step-header small{opacity:.7;margin-top:2px}
.hpb-step-content{display:none;padding:22px}.hpb-step.is-open .hpb-step-content{display:block}
.hpb-step label{display:block;font-weight:600;margin:0 0 7px}
.hpb-step input,.hpb-step select,.hpb-step textarea{width:100%;box-sizing:border-box;border:1px solid #d7d7d7;border-radius:3px;padding:13px 14px;margin:0 0 18px;background:#fff}
.hpb-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.hpb-grid input{margin:0 0 4px}
.hpb-vehicles{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:18px}
.hpb-vehicle{border:2px solid #ddd;background:#fff;text-align:left;padding:18px;cursor:pointer}
.hpb-vehicle strong,.hpb-vehicle span,.hpb-vehicle em{display:block}.hpb-vehicle strong{font-size:18px}.hpb-vehicle span{margin:5px 0 12px}.hpb-vehicle em{font-style:normal;color:#ff5a0a;font-weight:700}
.hpb-vehicle.is-selected{border-color:#ff5a0a}.hpb-vehicle.is-disabled{opacity:.38;cursor:not-allowed}
.hpb-next,.hpb-submit{border:0;background:#ff5a0a;color:#fff;text-transform:uppercase;font-weight:700;padding:14px 22px;cursor:pointer}
.hpb-notice{background:#f5f5f5;border-left:4px solid #ff5a0a;padding:13px 15px;margin:0 0 18px}
.hpb-review-row{padding:9px 0;border-bottom:1px solid #eee}.hpb-review-row b{display:inline-block;min-width:155px}
.hpb-terms{font-weight:400!important;margin:20px 0!important}.hpb-terms input{width:auto!important;margin:0 7px 0 0!important}
.hpb-dev-note{font-size:12px;color:#777;margin-top:12px}
.hpb-error{outline:2px solid #c00!important}
@media(max-width:650px){.hpb-grid,.hpb-vehicles{grid-template-columns:1fr}.hpb-booking{margin:15px auto}.hpb-step-content{padding:17px}}

/* Prevent theme typography overrides */
.hpb-step-header strong,.hpb-step-header small{color:#fff!important}.hpb-step-header strong{opacity:1!important}.hpb-step-header small{opacity:.78!important}
