.bukap-ux2-search,.bukap-ux2-workspace{font-family:inherit;color:#242424;box-sizing:border-box}.bukap-ux2-search *,.bukap-ux2-workspace *{box-sizing:border-box}
.bukap-ux2-search{background:#fff;padding:28px 30px;border-radius:28px;box-shadow:0 16px 44px rgba(18,22,30,.09);max-width:1550px;margin:0 auto}
.bukap-ux2-search-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:22px}.bukap-ux2-pill{border-radius:40px;padding:11px 24px;background:#252525;color:#fff;font-weight:700;font-size:15px}.bukap-ux2-add{border:0;border-radius:40px;background:#f3f2f0;color:#282828;padding:12px 18px;font-size:15px;cursor:pointer}.bukap-ux2-add:hover{background:#eae8e5}.bukap-ux2-reassurance{margin-left:auto;color:#62707d;font-size:14px}.bukap-ux2-leg-head{display:flex;justify-content:space-between;align-items:center;margin:6px 0 12px}.bukap-ux2-leg-head[hidden]{display:none!important}.bukap-ux2-leg{margin-bottom:10px}.bukap-ux2-leg:not(:first-child){padding-top:22px;border-top:1px solid #eee}.bukap-ux2-remove{border:0;background:none;text-decoration:underline;cursor:pointer;color:#666}.bukap-ux2-fields{display:grid;grid-template-columns:minmax(175px,1.2fr) minmax(175px,1.2fr) minmax(135px,.9fr) minmax(120px,.72fr) minmax(110px,.65fr);gap:10px;align-items:stretch}.bukap-ux2-field{position:relative;border:1px solid #aaa;border-radius:14px;min-width:0;display:flex;flex-direction:column;justify-content:center;padding:10px 15px;background:#fff;transition:border-color .16s,box-shadow .16s}.bukap-ux2-field:focus-within{border-color:#272727;box-shadow:0 0 0 2px rgba(0,0,0,.08);z-index:5}.bukap-ux2-field.is-selected{border-color:#3f9777}.bukap-ux2-field.is-area{border-color:#bf9d4f}.bukap-ux2-field label{font-size:12px!important;font-weight:500;color:#68737e;display:block;margin:0 0 3px}.bukap-ux2-field input,.bukap-ux2-field select{display:block;width:100%;height:30px;padding:0;background:transparent;border:0!important;outline:none!important;box-shadow:none!important;font-family:inherit;font-size:15px;font-weight:650;color:#222;min-width:0;border-radius:0}.bukap-ux2-field input::placeholder{font-size:13px;font-weight:400;color:#999}.bukap-ux2-field input:focus,.bukap-ux2-field select:focus{box-shadow:none!important}.bukap-ux2-date input,.bukap-ux2-time input{min-height:30px}.bukap-ux2-time input:disabled{color:#999}.bukap-ux2-bottom{display:flex;gap:15px;justify-content:flex-end;align-items:center;margin-top:14px}.bukap-ux2-submit{border:0;border-radius:48px;background:#252525;color:#fff;padding:17px 25px;min-width:170px;cursor:pointer;font-weight:700;font-size:16px;display:flex;align-items:center;justify-content:space-between;gap:28px}.bukap-ux2-submit:hover{background:#101010}.bukap-ux2-submit span{font-size:23px}.bukap-ux2-status{margin:0;flex:1;color:#6d6d6d;font-size:13px}.bukap-ux2-status.is-error{color:#a93220}.bukap-ux2-caption{margin:7px 0 0;font-size:11px;color:#8b9299}.bukap-ux2-dropdown{position:absolute;left:-1px;right:-1px;top:calc(100% + 5px);max-height:330px;overflow-y:auto;background:#fff;z-index:999999;border:1px solid #ddd;border-radius:16px;box-shadow:0 14px 44px rgba(0,0,0,.18);padding:8px}.bukap-ux2-dropdown[hidden]{display:none!important}.bukap-ux2-option-head{font-size:11px!important;font-weight:800;letter-spacing:.06em;color:#777;text-transform:uppercase;margin:8px 10px}.bukap-ux2-option{width:100%;border:0;background:#fff;text-align:left;display:block;padding:11px;border-radius:8px;cursor:pointer;color:#222}.bukap-ux2-option:hover,.bukap-ux2-option:focus{background:#f4f5f6}.bukap-ux2-option strong{font-size:14px;display:block}.bukap-ux2-option small{display:block;color:#727c85;font-size:12px;margin-top:3px}
.bukap-ux2-workspace{max-width:1400px;margin:24px auto 40px;background:#f8f8f7;padding:20px;border-radius:24px}.bukap-ux2-workspace-top{display:flex;align-items:center;gap:14px;padding:12px 16px 18px;flex-wrap:wrap}.bukap-ux2-eyebrow{font-size:11px;color:#767676;letter-spacing:.08em}.bukap-ux2-workspace-lock{margin-left:auto;color:#606b74;font-size:12px}.bukap-ux2-notice{padding:13px 17px;margin:0 12px 16px;border-left:3px solid #1a69df;background:#eaf3ff;color:#184070;font-size:14px}.bukap-ux2-notice[hidden]{display:none!important}.bukap-ux2-workspace .bukap-tp-booker{margin:0 auto;max-width:100%}
@media(min-width:1150px){.bukap-ux2-search .bukap-ux2-form>.bukap-ux2-bottom{margin-top:14px}}
@media(max-width:1120px){.bukap-ux2-fields{grid-template-columns:repeat(3,minmax(0,1fr))}.bukap-ux2-location{grid-column:span 1}}
@media(max-width:720px){.bukap-ux2-search{padding:17px;border-radius:18px}.bukap-ux2-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.bukap-ux2-location{grid-column:span 1}.bukap-ux2-reassurance{width:100%;margin-left:0}.bukap-ux2-bottom{align-items:stretch;flex-direction:column}.bukap-ux2-submit{width:100%}.bukap-ux2-workspace{padding:12px;border-radius:14px;margin:8px auto}.bukap-ux2-workspace-top{padding:8px 6px 14px}.bukap-ux2-workspace-lock{width:100%;margin-left:0}}
@media(max-width:430px){.bukap-ux2-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.bukap-ux2-location{grid-column:span 2}.bukap-ux2-field{padding:10px}.bukap-ux2-search-head{gap:7px}.bukap-ux2-pill,.bukap-ux2-add{font-size:13px;padding:10px 13px}}

@media(min-width:1150px){.bukap-ux2-form{display:grid;grid-template-columns:minmax(0,1fr) 174px;gap:14px;align-items:start}.bukap-ux2-bottom{display:flex;align-items:stretch;flex-direction:column;position:relative;margin:0}.bukap-ux2-submit{width:100%;min-width:0;min-height:64px}.bukap-ux2-bottom .bukap-ux2-status{position:absolute;top:calc(100% + 8px);left:0;right:0;font-size:12px}.bukap-ux2-support{position:absolute;top:calc(100% + 44px);left:0;right:0}}
.bukap-ux2-support{display:flex;gap:8px;flex-wrap:wrap}.bukap-ux2-support[hidden]{display:none!important}.bukap-ux2-support a{padding:8px 10px;border:1px solid #ccc;border-radius:8px;color:#272727;font-weight:650;font-size:12px;text-decoration:none}.bukap-ux2-support a:hover{background:#f0f0f0}

/* Phase 2 — dedicated direct-customer vehicle selection workspace. All rules are
 * scoped to this companion shortcode; the native booking engine owns behavior. */
.bukap-ux2-phase2{--ux2-charcoal:#252525;--ux2-blue:#1462f3;--ux2-ink:#1b2027;--ux2-muted:#68717d;--ux2-paper:#f7f7f6;max-width:1420px;margin:18px auto 42px;padding:clamp(12px,2.4vw,30px);border:1px solid #e9eaeb;background:var(--ux2-paper);box-shadow:0 22px 65px rgba(17,24,39,.05)}
.bukap-ux2-phase2 .bukap-ux2-workspace-top{padding:8px 5px 20px;gap:11px}
.bukap-ux2-phase2 .bukap-ux2-workspace-top>strong{font-weight:800;font-size:clamp(17px,1.8vw,22px);letter-spacing:-.025em;color:var(--ux2-ink)}
.bukap-ux2-phase2 .bukap-ux2-workspace-lock{display:inline-flex;align-items:center;gap:6px;color:#53606d;font-size:12px;font-weight:600}
.bukap-ux2-phase2 .bukap-ux2-eyebrow{font-weight:800;letter-spacing:.115em;color:#61707e}
.bukap-ux2-phase2 .bukap-tp-booker{--bukap-blue:var(--ux2-blue);--bukap-ink:var(--ux2-ink);--bukap-muted:var(--ux2-muted);--bukap-line:#e0e4e8;--bukap-bg:transparent;margin:0;max-width:none}
.bukap-ux2-phase2 .bukap-tp-booker .bukap-tp-form{border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible}
.bukap-ux2-phase2 .bukap-tp-booker .bukap-tp-progress{background:#fff;border:1px solid #eaedf0;border-radius:16px;padding:0 15px;margin:0 0 16px;overflow:hidden}
.bukap-ux2-phase2 .bukap-tp-booker .bukap-tp-progress span{min-height:59px;font-size:12px;letter-spacing:.005em}
.bukap-ux2-phase2 .bukap-tp-booker .bukap-tp-progress b{height:27px;width:27px;font-size:12px}
.bukap-ux2-phase2 .bukap-tp-booker .bukap-tp-progress span.current::after{background:var(--ux2-blue);height:3px}
.bukap-ux2-phase2 .bukap-tp-booker .bukap-tp-shell{padding:0;gap:22px;grid-template-columns:minmax(0,1fr) minmax(285px,345px);align-items:start}
.bukap-ux2-phase2 .bukap-tp-booker .bukap-tp-shell.is-step-1{grid-template-columns:minmax(0,1fr)}
.bukap-ux2-phase2 .bukap-tp-booker .bukap-tp-shell.is-step-1 .bukap-tp-main{max-width:1180px;margin-inline:auto}
.bukap-ux2-phase2 .bukap-tp-booker .bukap-tp-main{min-width:0}
.bukap-ux2-phase2 .bukap-tp-booker .bukap-tp-heading h2{font-size:clamp(24px,2.6vw,34px);color:#172027;font-weight:800;letter-spacing:-.04em}
.bukap-ux2-phase2 .bukap-tp-booker .bukap-tp-heading p{color:#64717a;font-size:14px;line-height:1.55}
.bukap-ux2-phase2 .bukap-tp-booker .bukap-tp-kicker{color:var(--ux2-blue)}
.bukap-ux2-phase2 .bukap-tp-booker .bukap-tp-step[data-step="2"] .bukap-tp-heading{padding:8px 4px 0}
.bukap-ux2-phase2 .bukap-tp-booker .bukap-ride-section{background:transparent;border:0;box-shadow:none;padding:0;margin:0 0 25px}
.bukap-ux2-phase2 .bukap-tp-booker .bukap-ride-head{margin:14px 0 14px;padding:5px 3px;border:0;background:transparent}
.bukap-ux2-phase2 .bukap-tp-booker .bukap-ride-head h3{font-size:17px;line-height:1.4;letter-spacing:-.02em;color:#1d2630}
.bukap-ux2-phase2 .bukap-tp-booker .bukap-vehicle-list{display:grid;gap:16px;min-width:0}
.bukap-ux2-phase2 .bukap-tp-booker .bukap-vehicle-card-v2{position:relative;border:1px solid #e0e4e8;border-radius:20px;background:#fff;box-shadow:0 8px 22px rgba(15,23,42,.035);padding:19px 20px;margin:0;transition:border-color .18s,box-shadow .18s,transform .18s}
.bukap-ux2-phase2 .bukap-tp-booker .bukap-vehicle-card-v2:hover{border-color:#b4c2d6;box-shadow:0 12px 30px rgba(15,23,42,.08)}
.bukap-ux2-phase2 .bukap-tp-booker .bukap-vehicle-card-v2.selected{border:2px solid var(--ux2-blue);padding:18px 19px;box-shadow:0 9px 28px rgba(20,98,243,.09)}
.bukap-ux2-phase2 .bukap-tp-booker .bukap-vehicle-card-v2.selected::after{content:'✓';position:absolute;right:17px;top:16px;display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:var(--ux2-blue);color:#fff;font-weight:800;font-size:13px}
.bukap-ux2-phase2 .bukap-tp-booker .bukap-card-head{margin:0 25px 13px 0;padding:0}
.bukap-ux2-phase2 .bukap-tp-booker .bukap-card-head h3{font-size:clamp(20px,2vw,25px);color:#1a2631;line-height:1.2;font-weight:800;letter-spacing:-.025em}
.bukap-ux2-phase2 .bukap-tp-booker .bukap-card-eyebrow,.bukap-ux2-phase2 .bukap-tp-booker .bukap-card-subtitle{color:#65727e}
.bukap-ux2-phase2 .bukap-tp-booker .bukap-card-layout{gap:18px;align-items:stretch;min-width:0}
.bukap-ux2-phase2 .bukap-tp-booker .bukap-vehicle-visual{background:#f3f4f6;border-radius:14px;overflow:hidden;min-width:0}
.bukap-ux2-phase2 .bukap-tp-booker .bukap-reference-stage{background:#f5f6f7;border-radius:13px;overflow:hidden}
.bukap-ux2-phase2 .bukap-tp-booker .bukap-reference-stage img{object-fit:contain;max-width:100%;height:auto}
.bukap-ux2-phase2 .bukap-tp-booker .bukap-reference-footer{display:flex;flex-wrap:wrap;gap:6px;align-items:center;justify-content:space-between;padding:8px 4px}
.bukap-ux2-phase2 .bukap-tp-booker .bukap-real-gallery-trigger{color:var(--ux2-blue);font-weight:700;text-decoration:none}
.bukap-ux2-phase2 .bukap-tp-booker .bukap-card-details{min-width:0}
.bukap-ux2-phase2 .bukap-tp-booker .bukap-vehicle-specs{display:flex;flex-wrap:wrap;gap:9px 11px}
.bukap-ux2-phase2 .bukap-tp-booker .bukap-card-spec{color:#485463}
.bukap-ux2-phase2 .bukap-tp-booker .bukap-vehicle-price{background:#f8fafc;border:1px solid #eef0f4;border-radius:14px;padding:13px 14px}
.bukap-ux2-phase2 .bukap-tp-booker .bukap-vehicle-price>strong{font-size:clamp(20px,2.2vw,27px);font-weight:800;letter-spacing:-.035em;color:#1b2632}
.bukap-ux2-phase2 .bukap-tp-booker .bukap-select-vehicle{background:var(--ux2-charcoal);color:#fff;border-radius:12px;min-height:43px;font-weight:750;transition:background .15s}
.bukap-ux2-phase2 .bukap-tp-booker .bukap-select-vehicle:hover,.bukap-ux2-phase2 .bukap-tp-booker .bukap-select-vehicle:focus-visible{background:#0c0c0c}
.bukap-ux2-phase2 .bukap-tp-booker .bukap-vehicle-card-v2.selected .bukap-select-vehicle{background:var(--ux2-blue)}
.bukap-ux2-phase2 .bukap-tp-booker .bukap-host-reopen,.bukap-ux2-phase2 .bukap-tp-booker .bukap-upgrade{border-radius:10px}
.bukap-ux2-phase2 .bukap-tp-booker .bukap-fourbyfour-card,.bukap-ux2-phase2 .bukap-tp-booker .bukap-host-addon,.bukap-ux2-phase2 .bukap-tp-booker .bukap-fourbyfour-route-note{border-radius:15px;box-shadow:none}
.bukap-ux2-phase2 .bukap-tp-booker .bukap-tp-summary{position:sticky;top:23px;width:100%;margin:0;border:1px solid #e2e6eb;border-radius:18px;background:#fff;box-shadow:0 8px 24px rgba(19,29,42,.06);overflow:hidden}
.bukap-ux2-phase2 .bukap-tp-booker .bukap-summary-toggle{background:#fff;color:#202936}
.bukap-ux2-phase2 .bukap-tp-booker .bukap-summary-body{padding:0 16px 15px}
.bukap-ux2-phase2 .bukap-tp-booker .bukap-summary-total{border-radius:11px;background:#f4f7fb;padding:12px}
.bukap-ux2-phase2 .bukap-tp-booker .bukap-support-card{border-radius:15px;background:#fff}
.bukap-ux2-phase2 .bukap-tp-booker .bukap-tp-step[data-step="2"]>.bukap-tp-actions.split{position:sticky;bottom:8px;z-index:12;display:flex;gap:12px;margin:18px -4px 0;padding:12px;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border:1px solid #e9edf1;border-radius:16px;box-shadow:0 -5px 32px rgba(14,22,33,.07)}
.bukap-ux2-phase2 .bukap-tp-booker .bukap-tp-step[data-step="2"]>.bukap-tp-actions.split .bukap-tp-primary{background:var(--ux2-charcoal);border-radius:12px;min-height:45px;font-weight:750}
.bukap-ux2-phase2 .bukap-tp-booker .bukap-tp-step[data-step="2"]>.bukap-tp-actions.split .bukap-tp-primary:not(:disabled):hover{background:#000}
.bukap-ux2-phase2 .bukap-tp-booker .bukap-tp-step[data-step="2"]>.bukap-tp-actions.split .bukap-tp-primary:disabled{opacity:.55}
.bukap-ux2-itinerary-bar{display:flex;align-items:center;gap:14px;border:1px solid #e1e5ea;border-radius:18px;background:#fff;padding:16px 20px;margin:0 0 18px;box-shadow:0 7px 22px rgba(0,0,0,.035)}
.bukap-ux2-itinerary-bar[hidden]{display:none!important}
.bukap-ux2-itinerary-symbol{display:grid;place-items:center;flex:0 0 42px;height:42px;border-radius:13px;background:#f0f3f7;color:#242c35;font-size:23px}
.bukap-ux2-itinerary-content{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}
.bukap-ux2-itinerary-overline{color:#66727f;font-size:10px;letter-spacing:.095em;font-weight:800}
.bukap-ux2-itinerary-content>strong{color:#172027;font-size:15px;line-height:1.3;overflow-wrap:anywhere}
.bukap-ux2-itinerary-content [data-ux-pax]{color:#66727f;font-size:12px}
.bukap-ux2-edit-trip{background:#fff;border:1px solid #c7ced6;border-radius:30px;color:#1b2631;padding:10px 14px;font-size:12px;font-weight:750;white-space:nowrap;cursor:pointer}
.bukap-ux2-edit-trip:hover{background:#f4f6f8}
.bukap-ux2-phase2 .bukap-tp-booker .bukap-host-reopen:focus-visible,.bukap-ux2-edit-trip:focus-visible,.bukap-ux2-phase2 .bukap-tp-booker .bukap-select-vehicle:focus-visible{outline:3px solid #93b8ff;outline-offset:2px}
@media(max-width:1100px){.bukap-ux2-phase2 .bukap-tp-booker .bukap-tp-shell{grid-template-columns:minmax(0,1fr) 300px;gap:15px}}
@media(max-width:850px){.bukap-ux2-phase2 .bukap-tp-booker .bukap-tp-shell{display:flex;flex-direction:column}.bukap-ux2-phase2 .bukap-tp-booker .bukap-tp-main,.bukap-ux2-phase2 .bukap-tp-booker .bukap-tp-summary{width:100%}.bukap-ux2-phase2 .bukap-tp-booker .bukap-tp-summary{position:static}.bukap-ux2-phase2 .bukap-tp-booker .bukap-tp-progress{padding:0 4px}.bukap-ux2-phase2 .bukap-tp-booker .bukap-tp-progress span{font-size:11px}}
@media(max-width:560px){.bukap-ux2-phase2{padding:10px;margin:8px 0 24px;border:0;border-radius:12px}.bukap-ux2-phase2 .bukap-ux2-workspace-top{padding:8px 4px 12px}.bukap-ux2-phase2 .bukap-ux2-workspace-lock{width:100%;margin:0}.bukap-ux2-itinerary-bar{gap:10px;padding:12px}.bukap-ux2-itinerary-symbol{flex-basis:34px;height:34px;font-size:19px}.bukap-ux2-itinerary-content>strong{font-size:13px}.bukap-ux2-edit-trip{padding:9px;font-size:11px}.bukap-ux2-phase2 .bukap-tp-booker .bukap-vehicle-card-v2{padding:14px}.bukap-ux2-phase2 .bukap-tp-booker .bukap-vehicle-card-v2.selected{padding:13px}.bukap-ux2-phase2 .bukap-tp-booker .bukap-card-head h3{font-size:20px}.bukap-ux2-phase2 .bukap-tp-booker .bukap-card-layout{gap:10px}.bukap-ux2-phase2 .bukap-tp-booker .bukap-tp-step[data-step="2"]>.bukap-tp-actions.split{bottom:0;margin:12px 0 0;border-radius:12px;padding:10px}.bukap-ux2-phase2 .bukap-tp-booker .bukap-tp-progress span em{font-size:10px}.bukap-ux2-phase2 .bukap-tp-booker .bukap-tp-progress span b{height:23px;width:23px}}
@media(prefers-reduced-motion:reduce){.bukap-ux2-phase2 .bukap-vehicle-card-v2,.bukap-ux2-phase2 .bukap-select-vehicle{transition:none}}


/* Phase 3 — traveler details and final payment experience.
 * Styling only: never hide/replace native fields, price calculations, agreements,
 * payment methods, validation dialogs or the native submit button. */
.bukap-ux2-phase3 .bukap-tp-booker .bukap-tp-step[data-step="3"]{color:#202832}
.bukap-ux2-phase3 .bukap-tp-booker .bukap-tp-step[data-step="3"]>.bukap-tp-heading{padding:4px 4px 8px}
.bukap-ux2-phase3 .bukap-ux3-intro{padding:23px 25px;margin:0 0 18px;border:1px solid #e1e8f1;border-radius:19px;background:#fff;box-shadow:0 10px 25px rgba(15,23,42,.04)}
.bukap-ux2-phase3 .bukap-ux3-intro .bukap-ux3-eyebrow{display:block;font-size:10px;letter-spacing:.12em;color:#2766ca;font-weight:800;margin:0 0 7px}
.bukap-ux2-phase3 .bukap-ux3-intro h3{font-size:clamp(19px,2vw,26px);line-height:1.25;letter-spacing:-.025em;color:#18222d;margin:0 0 7px;font-weight:800}
.bukap-ux2-phase3 .bukap-ux3-intro p{font-size:13px;line-height:1.55;color:#627080;margin:0;max-width:690px}
.bukap-ux2-phase3 .bukap-tp-step[data-step="3"] .bukap-card{border:1px solid #e1e6ea;border-radius:18px;background:#fff;box-shadow:0 6px 22px rgba(15,23,42,.04);margin-bottom:18px;overflow:visible}
.bukap-ux2-phase3 .bukap-tp-step[data-step="3"] .bukap-traveler-card{padding:clamp(16px,2vw,27px)}
.bukap-ux2-phase3 .bukap-tp-step[data-step="3"] .bukap-traveler-card-head h3{font-size:19px;letter-spacing:-.02em;font-weight:800;color:#172333}
.bukap-ux2-phase3 .bukap-tp-step[data-step="3"] .bukap-traveler-card-head p{font-size:13px;color:#66717e;line-height:1.55}
.bukap-ux2-phase3 .bukap-tp-step[data-step="3"] input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
.bukap-ux2-phase3 .bukap-tp-step[data-step="3"] select,
.bukap-ux2-phase3 .bukap-tp-step[data-step="3"] textarea{border:1px solid #ccd5df;border-radius:11px;min-height:44px;background:#fff;color:#1c2935;max-width:100%;font-size:14px}
.bukap-ux2-phase3 .bukap-tp-step[data-step="3"] input:focus-visible,
.bukap-ux2-phase3 .bukap-tp-step[data-step="3"] select:focus-visible,
.bukap-ux2-phase3 .bukap-tp-step[data-step="3"] textarea:focus-visible{outline:2px solid #8bb4ff;outline-offset:1px;border-color:#2875ee}
.bukap-ux2-phase3 .bukap-tp-step[data-step="3"] .bukap-phone-control{min-width:0}
.bukap-ux2-phase3 .bukap-tp-step[data-step="3"] .bukap-lead-traveler-choice{border-radius:13px;background:#f7f9fc}
.bukap-ux2-phase3 .bukap-tp-step[data-step="3"] .bukap-lead-traveler-panel,
.bukap-ux2-phase3 .bukap-tp-step[data-step="3"] .bukap-billing-identity{border-radius:14px}
.bukap-ux2-phase3 .bukap-tp-step[data-step="3"] .bukap-payment-card{padding:22px}
.bukap-ux2-phase3 .bukap-tp-step[data-step="3"] .bukap-payment-card>h3{font-size:19px;font-weight:800;letter-spacing:-.02em;color:#172333}
.bukap-ux2-phase3 .bukap-tp-step[data-step="3"] .bukap-payment-option{border:1px solid #d7dfe7;background:#fff;border-radius:14px;padding:15px;margin-top:11px;box-shadow:none;transition:border-color .12s,box-shadow .12s}
.bukap-ux2-phase3 .bukap-tp-step[data-step="3"] .bukap-payment-option:has(input:checked){border-color:#1462f3;box-shadow:0 0 0 2px rgba(20,98,243,.09);background:#f6f9ff}
.bukap-ux2-phase3 .bukap-tp-step[data-step="3"] .bukap-policy-card,
.bukap-ux2-phase3 .bukap-tp-step[data-step="3"] .bukap-privacy-card{padding:19px 22px}
.bukap-ux2-phase3 .bukap-tp-step[data-step="3"] .bukap-final-actions{position:sticky;bottom:8px;z-index:12;display:flex;align-items:stretch;gap:12px;padding:12px;margin:15px 0;background:rgba(255,255,255,.97);backdrop-filter:blur(10px);border:1px solid #e4e9ee;border-radius:16px;box-shadow:0 -5px 30px rgba(15,23,42,.065)}
.bukap-ux2-phase3 .bukap-tp-step[data-step="3"] .bukap-final-actions .bukap-tp-primary{background:#222;color:#fff;min-height:48px;border-radius:12px;font-size:14px;font-weight:800}
.bukap-ux2-phase3 .bukap-tp-step[data-step="3"] .bukap-final-actions .bukap-tp-primary:disabled{opacity:.5}
.bukap-ux2-phase3 .bukap-tp-step[data-step="3"] .bukap-final-actions .bukap-tp-secondary{border-radius:12px;min-height:48px}
.bukap-ux2-phase3 .bukap-ux3-review{border:1px solid #dfe5ec;border-radius:18px;background:#fff;padding:18px 20px;margin-bottom:18px;display:none}
.bukap-ux2-phase3 .bukap-ux3-review h3{font-size:18px;font-weight:800;margin:0 0 13px;color:#172333}
.bukap-ux2-phase3 .bukap-ux3-review-items{display:grid;gap:11px}
.bukap-ux2-phase3 .bukap-ux3-review-item{display:flex;gap:10px;align-items:start;border-bottom:1px solid #edf0f4;padding:0 0 12px}
.bukap-ux2-phase3 .bukap-ux3-review-number{display:grid;place-items:center;background:#eef3fb;border-radius:8px;min-width:25px;height:25px;font-size:11px;font-weight:800;color:#2556a2}
.bukap-ux2-phase3 .bukap-ux3-review-item strong{display:block;font-size:13px;line-height:1.4;color:#172333}
.bukap-ux2-phase3 .bukap-ux3-review-item small{display:block;color:#66717e;margin-top:4px;font-size:11px}
.bukap-ux2-phase3 .bukap-ux3-review-empty{color:#687484;font-size:12px}
.bukap-ux2-phase3 .bukap-ux3-review-total,.bukap-ux2-phase3 .bukap-ux3-payment-status{display:flex;justify-content:space-between;gap:13px;margin:12px 0 0;font-size:12px;color:#536273}
.bukap-ux2-phase3 .bukap-ux3-review-total strong{color:#1d2938;font-size:19px}
.bukap-ux2-phase3 .bukap-ux3-payment-status strong{font-size:12px;color:#233a58;text-align:right}
.bukap-ux2-phase3 .bukap-ux3-payment-note{font-size:11px;color:#6c7987;line-height:1.55;margin:13px 0 0}
.bukap-ux2-phase3 .bukap-ux3-help{margin:12px 0 20px;padding:17px 20px;border-radius:15px;background:#f0f4fa;border:1px solid #dbe3ec;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}
.bukap-ux2-phase3 .bukap-ux3-help>strong{font-size:13px;color:#24374c}
.bukap-ux2-phase3 .bukap-ux3-help-links{display:flex;gap:8px;flex-wrap:wrap}
.bukap-ux2-phase3 .bukap-ux3-help-links a{display:inline-flex;border:1px solid #b7c7da;padding:9px 13px;border-radius:12px;color:#24374c;font-size:12px;font-weight:750;text-decoration:none;background:#fff}
.bukap-ux2-phase3 .bukap-ux3-help-links a:hover{background:#e9f1fe}
@media(max-width:850px){.bukap-ux2-phase3 .bukap-ux3-review{display:block}.bukap-ux2-phase3 .bukap-tp-step[data-step="3"] .bukap-traveler-card{padding:17px}}
@media(max-width:560px){.bukap-ux2-phase3 .bukap-ux3-intro{padding:17px}.bukap-ux2-phase3 .bukap-ux3-review{padding:16px}.bukap-ux2-phase3 .bukap-tp-step[data-step="3"] .bukap-final-actions{bottom:0;padding:9px;gap:8px}.bukap-ux2-phase3 .bukap-tp-step[data-step="3"] .bukap-final-actions button{min-width:0;flex:1}.bukap-ux2-phase3 .bukap-ux3-help{align-items:stretch;flex-direction:column}.bukap-ux2-phase3 .bukap-ux3-help-links a{flex:1;justify-content:center}}
@media(prefers-reduced-motion:reduce){.bukap-ux2-phase3 .bukap-payment-option{transition:none}}


/* v0.4.1 — compact homepage entry, no duplicated customer search step.
 * Scoped entirely to our search shortcode. Booking engine data/logic untouched. */
.bukap-ux2-search{padding:14px 18px!important;border-radius:22px}
.bukap-ux2-search .bukap-ux2-search-head{gap:9px;margin-bottom:10px}
.bukap-ux2-search .bukap-ux2-pill{padding:7px 17px;font-size:13px;line-height:1.3}
.bukap-ux2-search .bukap-ux2-add{padding:8px 13px;font-size:13px;line-height:1.3}
.bukap-ux2-search .bukap-ux2-reassurance{font-size:12px;line-height:1.3}
.bukap-ux2-search .bukap-ux2-leg{margin-bottom:0}
.bukap-ux2-search .bukap-ux2-fields{gap:8px}
.bukap-ux2-search .bukap-ux2-field{min-height:59px;padding:8px 12px;border-radius:12px}
.bukap-ux2-search .bukap-ux2-field label{margin-bottom:2px;font-size:11px!important;line-height:1.25}
.bukap-ux2-search .bukap-ux2-field input,.bukap-ux2-search .bukap-ux2-field select{height:25px;font-size:14px}
.bukap-ux2-search .bukap-ux2-field input::placeholder{font-size:12px}
.bukap-ux2-search .bukap-ux2-submit{min-height:59px;padding:10px 16px;font-size:14px;border-radius:31px;line-height:1.3}
.bukap-ux2-search .bukap-ux2-submit span{font-size:19px}
.bukap-ux2-search .bukap-ux2-caption{display:none}
.bukap-ux2-search .bukap-ux2-status:empty{display:none}
.bukap-ux2-search .bukap-ux2-bottom{margin-top:0}
@media (min-width:1150px){
 .bukap-ux2-search .bukap-ux2-form{grid-template-columns:minmax(0,1fr) 152px;gap:10px}
 .bukap-ux2-search .bukap-ux2-form>.bukap-ux2-bottom{margin-top:0}
}
@media (min-width:721px) and (max-width:1149px){
 .bukap-ux2-search .bukap-ux2-bottom{margin-top:10px}
 .bukap-ux2-search .bukap-ux2-caption{display:none}
}
@media (max-width:720px){
 .bukap-ux2-search{padding:14px!important}
 .bukap-ux2-search .bukap-ux2-search-head{margin-bottom:10px}
 .bukap-ux2-search .bukap-ux2-reassurance{display:none}
 .bukap-ux2-search .bukap-ux2-bottom{margin-top:9px}
 .bukap-ux2-search .bukap-ux2-field{min-height:58px}
 .bukap-ux2-search .bukap-ux2-submit{min-height:50px}
}
/* Handoff screen appears ONLY for fully Google-verified addresses. The native
 * fields are retained and revealed if automatic pricing fails or is slow. */
.bukap-ux2-handoff-progress{display:flex;align-items:center;gap:14px;min-height:115px;padding:21px;border-radius:17px;border:1px solid #e6e9ed;background:#fff;margin:0 0 14px}
.bukap-ux2-handoff-progress[hidden]{display:none!important}
.bukap-ux2-handoff-progress strong{display:block;font-size:17px;color:#1b2027;line-height:1.3}
.bukap-ux2-handoff-progress p{font-size:13px;color:#64717a;margin:6px 0 0;line-height:1.5}
.bukap-ux2-handoff-spinner{display:block;flex:0 0 30px;width:30px;height:30px;border:3px solid #d9e3f5;border-top-color:#1462f3;border-radius:100%;animation:bukap-ux2-spin .85s linear infinite}
@keyframes bukap-ux2-spin{to{transform:rotate(360deg)}}
.bukap-ux2-workspace.is-handoff-loading .bukap-tp-form.is-step-1{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important;clip-path:inset(100%)!important}
@media(prefers-reduced-motion:reduce){.bukap-ux2-handoff-spinner{animation:none;border-top-color:#1462f3}}

/* v0.4.2 — no duplicate page heading or secondary marketing ribbon on the
 * transactional booking URL. Scope strictly to a page with our shortcode. */
body.bukap-ux2-booking-page .entry-header,
body.bukap-ux2-booking-page .page-header,
body.bukap-ux2-booking-page .entry-title,
body.bukap-ux2-booking-page h1.wp-block-post-title,
body.bukap-ux2-booking-page .elementor-page-title {display:none!important}
body.bukap-ux2-booking-page .bukap-ux2-workspace{margin-top:8px}
body.bukap-ux2-booking-page .bukap-ux2-workspace-top{display:none!important}
body.bukap-ux2-booking-page [data-bukap-ux-hidden-bar="1"]{display:none!important}
body.bukap-ux2-booking-page .bukap-tp-step[data-step="2"]{scroll-margin-top:94px}
/* Extra: keep the genuine engine selection and checkout steps visible. */

/* v0.4.3 — Dedicated booking layout correction.
 * The native engine applies a container-query flex layout at <=900px and
 * places its summary FIRST. This override restores the intended right-side
 * itinerary while leaving quotation/vehicle controls and DOM order intact.
 * Only the direct-customer booking shortcode is affected. */
@container (min-width: 780px) {
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-tp-booker .bukap-tp-shell.is-step-2,
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-tp-booker .bukap-tp-shell.is-step-3 {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(255px, 305px) !important;
    gap: clamp(15px, 2vw, 27px) !important;
    align-items: start;
  }
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-tp-booker .bukap-tp-shell.is-step-2 > .bukap-tp-main,
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-tp-booker .bukap-tp-shell.is-step-3 > .bukap-tp-main {
    grid-column: 1;
    grid-row: 1;
    order: 0;
    width: 100%;
    min-width: 0;
  }
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-tp-booker .bukap-tp-shell.is-step-2 > .bukap-tp-summary,
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-tp-booker .bukap-tp-shell.is-step-3 > .bukap-tp-summary {
    grid-column: 2;
    grid-row: 1;
    order: 0;
    width: 100%;
    min-width: 0;
    position: sticky !important;
    top: 106px;
    align-self: start;
    max-height: calc(100vh - 124px);
    max-height: calc(100dvh - 124px);
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    z-index: 2;
  }
  body.admin-bar.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-tp-booker .bukap-tp-shell.is-step-2 > .bukap-tp-summary,
  body.admin-bar.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-tp-booker .bukap-tp-shell.is-step-3 > .bukap-tp-summary {
    top: 138px;
    max-height: calc(100vh - 155px);
    max-height: calc(100dvh - 155px);
  }
}
/* Keep the itinerary concise: the pricing, itinerary and cancellation details
 * remain, but the promotional review/list do not bury the vehicle choices. */
body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-tp-shell.is-step-2 .bukap-tp-summary .bukap-summary-trust,
body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-tp-shell.is-step-3 .bukap-tp-summary .bukap-summary-trust {
  display: none !important;
}
@container (min-width: 780px) and (max-width: 1100px) {
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-tp-booker .bukap-vehicle-card-v2 .bukap-card-layout {
    grid-template-columns: minmax(0, 1fr);
    gap: 13px;
  }
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-tp-booker .bukap-vehicle-card-v2 .bukap-reference-stage {
    aspect-ratio: 1.9;
  }
}
@container (max-width: 779px) {
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-tp-booker .bukap-tp-shell.is-step-2,
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-tp-booker .bukap-tp-shell.is-step-3 {
    display: flex !important;
    flex-direction: column;
    gap: 15px;
  }
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-tp-booker .bukap-tp-shell.is-step-2 > .bukap-tp-main,
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-tp-booker .bukap-tp-shell.is-step-3 > .bukap-tp-main {
    order: 1;
    width: 100%;
    min-width: 0;
  }
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-tp-booker .bukap-tp-shell.is-step-2 > .bukap-tp-summary,
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-tp-booker .bukap-tp-shell.is-step-3 > .bukap-tp-summary {
    order: 2;
    width: 100%;
    position: static !important;
    max-height: none;
    overflow: visible;
  }
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-tp-booker .bukap-vehicle-card-v2 .bukap-card-layout {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* v0.4.4 — Three visible vehicle choices on a typical desktop viewport.
 * Presentation ONLY. Native booking engine still renders prices, options,
 * required 4x4, galleries, host add-ons and handles selections/submission.
 * All selectors are restricted to the dedicated direct booking shortcode. */
@media screen and (min-width: 1100px) {
  /* Escape a narrow WordPress/Elementor content column while staying centered.
     Does not change the theme or its content width on any other page. */
  body.bukap-ux2-booking-page .bukap-ux2-workspace.bukap-ux2-phase2 {
    position: relative;
    /* Match the VIEWPORT center, not the theme's often offset content column.
       JS computes --bukap-ux2-center-shift after measuring the live theme. */
    left: calc(50% + var(--bukap-ux2-center-shift, 0px));
    transform: translateX(-50%);
    width: min(1680px, calc(100vw - 48px)) !important;
    max-width: none !important;
    margin: 5px 0 32px !important;
    padding: clamp(10px, 1.25vw, 19px) !important;
    overflow: visible !important;
    background: #fafafa;
  }
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-tp-booker,
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-tp-form {
    width: 100% !important;
    max-width: none !important;
    overflow: visible !important;
  }
  /* Force native summary beside (not below/above) vehicle cards. The native
     CSS uses container queries that may otherwise collapse this grid. */
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-tp-booker .bukap-tp-form.is-step-2 > .bukap-tp-shell.is-step-2 {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) clamp(235px, 18vw, 290px) !important;
    gap: clamp(12px, 1.5vw, 23px) !important;
    align-items: start !important;
    padding: 0 !important;
    overflow: visible !important;
  }
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-tp-form.is-step-2 .bukap-tp-shell.is-step-2 > .bukap-tp-main {
    grid-area: 1 / 1 !important;
    order: 0 !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
  }
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-tp-form.is-step-2 .bukap-tp-shell.is-step-2 > .bukap-tp-summary {
    grid-area: 1 / 2 !important;
    order: 0 !important;
    position: sticky !important;
    top: 104px !important;
    align-self: start !important;
    width: 100% !important;
    min-width: 0 !important;
    max-height: calc(100dvh - 116px) !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    z-index: 3;
  }
  body.admin-bar.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-tp-form.is-step-2 .bukap-tp-shell.is-step-2 > .bukap-tp-summary {top: 136px !important;max-height: calc(100dvh - 150px) !important;}
  /* The right itinerary is authoritative: avoid duplicating a large trip bar
     above the choices. The native Edit Trip / Back buttons remain available. */
  body.bukap-ux2-booking-page .bukap-ux2-phase2:has(.bukap-tp-form.is-step-2) > [data-ux-itinerary] {display: none !important;}
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-tp-progress {margin-bottom: 9px !important;padding: 0 8px !important;}
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-tp-progress span {min-height: 40px !important;}
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-tp-progress b {width: 23px !important;height: 23px !important;}
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-tp-step[data-step="2"] > .bukap-tp-heading {padding: 0 2px 2px !important;margin: 0 0 6px !important;}
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-tp-step[data-step="2"] .bukap-tp-heading h2 {font-size: 24px !important;line-height: 1.18 !important;margin: 0 0 3px !important;}
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-tp-step[data-step="2"] .bukap-tp-heading p {font-size: 12px !important;margin: 0 0 5px !important;}
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-ride-section {margin-bottom: 12px !important;}
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-ride-head {margin: 3px 0 9px !important;padding: 0 2px !important;gap: 6px;}
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-ride-head h3 {font-size: 13px !important;margin: 0 !important;}
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-ride-head > div > span {font-size: 10px !important;}
  /* Always three across on regular desktop. A fourth naturally wraps onto
     the next row; the customer can scroll to it. */
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-tp-form.is-step-2 .bukap-ride-section .bukap-vehicle-list {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    align-items: stretch !important;
    gap: 10px !important;
    padding: 0 !important;
    min-width: 0 !important;
  }
  /* Supplemental 4x4 and host option sections are not vehicles and should
     span the row instead of becoming incorrectly sized "vehicle cards". */
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-vehicle-list > :not(.bukap-vehicle-card-v2) {
    grid-column: 1 / -1 !important;
    min-width: 0;
  }
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-tp-form.is-step-2 .bukap-vehicle-card.bukap-vehicle-card-v2 {
    box-sizing: border-box;
    display: flex !important;
    flex-direction: column !important;
    min-width: 0 !important;
    width: 100% !important;
    height: 100%;
    margin: 0 !important;
    padding: 11px 12px !important;
    border-radius: 14px !important;
  }
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-tp-form.is-step-2 .bukap-vehicle-card.bukap-vehicle-card-v2.selected {padding: 10px 11px !important;}
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-card-head {margin: 0 0 6px !important;padding: 0 !important;min-height: 66px;}
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-card-eyebrow-row {margin-bottom: 3px !important;gap: 3px !important;}
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-card-eyebrow {font-size: 9px !important;letter-spacing: .035em !important;}
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-card-recommended {font-size: 9px !important;padding: 3px 6px !important;}
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-card-head h3 {font-size: clamp(16px, 1.25vw, 20px) !important;line-height: 1.2 !important;margin: 0 0 3px !important;}
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-card-subtitle {font-size: 10px !important;line-height: 1.25 !important;margin: 0 !important;}
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-vehicle-card-v2 .bukap-card-layout {
    display: flex !important;
    flex-direction: column !important;
    gap: 5px !important;
    flex: 1;
    min-width: 0 !important;
  }
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-reference-visual {flex: 0 0 auto;min-width: 0;}
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-vehicle-card-v2 .bukap-reference-stage {
    height: clamp(104px, 15dvh, 144px) !important;
    min-height: 0 !important;
    max-height: 144px !important;
    aspect-ratio: auto !important;
    border-radius: 10px !important;
  }
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-vehicle-card-v2 .bukap-reference-stage img {width: 100% !important;height: 100% !important;object-fit: contain !important;}
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-reference-footer {padding: 3px 0 0 !important;min-height: 0 !important;}
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-reference-footer > span {display: none !important;}
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-real-gallery-trigger {min-height: 22px !important;font-size: 10px !important;padding: 2px 0 !important;}
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-card-details {gap: 4px !important;flex: 1;min-width: 0;}
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-vehicle-specs {display: flex !important;flex-wrap: wrap !important;gap: 4px 7px !important;margin: 0 0 4px !important;}
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-vehicle-specs > .bukap-card-spec {font-size: 10px !important;line-height: 1.25 !important;gap: 3px !important;}
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-card-spec-icon,.bukap-ux2-phase2 .bukap-card-spec-svg {width: 13px !important;height: 13px !important;flex-basis: 13px !important;}
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-vehicle-model-summary {font-size: 10px !important;line-height: 1.25 !important;margin: 0 0 3px !important;}
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-vehicle-more {margin-top: 2px !important;}
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-vehicle-more summary {font-size: 10px !important;}
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-vehicle-card.bukap-vehicle-card-v2 .bukap-vehicle-price {gap: 2px !important;padding: 6px 0 0 !important;margin-top: auto !important;}
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-vehicle-card.bukap-vehicle-card-v2 .bukap-vehicle-price > strong {font-size: clamp(19px, 1.55vw, 24px) !important;line-height: 1.15 !important;}
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-vehicle-price > .bukap-approx-usd {font-size: 13px !important;line-height: 1.15 !important;}
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-vehicle-price > .bukap-cop-charge-note {font-size: 9px !important;line-height: 1.25 !important;}
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-vehicle-price > span:not(.bukap-approx-usd):not(.bukap-cop-charge-note) {font-size: 9px !important;margin: 0 !important;}
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-vehicle-card.bukap-vehicle-card-v2 .bukap-select-vehicle {min-height: 36px !important;font-size: 12px !important;margin: 5px 0 0 !important;}
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-vehicle-card-v2 .bukap-upgrade {min-height: 24px !important;font-size: 10px !important;margin-top: 0 !important;padding: 3px 0 !important;}
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-tp-step[data-step="2"] > .bukap-tp-actions.split {margin-top: 9px !important;padding: 7px 10px !important;}
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-tp-step[data-step="2"] > .bukap-tp-actions.split button {min-height: 39px !important;font-size: 12px !important;}
  /* Keep the itinerary on the right compact, with pricing and policies visible. */
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-tp-summary .bukap-summary-body {padding: 7px 10px 11px !important;}
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-tp-summary .bukap-summary-toggle {padding: 10px 11px !important;}
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-tp-summary .bukap-summary-trip {padding: 7px 0 !important;}
}
/* Narrow desktops: keep summary to the right but use two sufficiently large
   vehicle cards, rather than squeezing them into unreadable columns. */
@media screen and (min-width: 980px) and (max-width: 1099px) {
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-tp-form.is-step-2 .bukap-tp-shell.is-step-2 {display: grid !important;grid-template-columns:minmax(0,1fr) 240px !important;align-items:start;gap:12px !important;}
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-tp-form.is-step-2 .bukap-tp-shell.is-step-2 > .bukap-tp-main {grid-area:1/1 !important;order:0 !important;}
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-tp-form.is-step-2 .bukap-tp-shell.is-step-2 > .bukap-tp-summary {grid-area:1/2 !important;order:0 !important;position:sticky !important;top:105px !important;}
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-ride-section .bukap-vehicle-list {display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-vehicle-list > :not(.bukap-vehicle-card-v2) {grid-column:1/-1 !important;}
}
@media screen and (min-width: 768px) and (max-width: 979px) {
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-ride-section .bukap-vehicle-list {display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-vehicle-list > :not(.bukap-vehicle-card-v2) {grid-column:1/-1 !important;}
}
/* Phones: one full-width vehicle card per row. Keep mobile scrolling natural;
   no horizontal carousel, overflow clipping or artificially fixed card heights. */
@media screen and (max-width: 767px) {
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-ride-section .bukap-vehicle-list {display:grid !important;grid-template-columns:minmax(0,1fr) !important;gap:13px !important;padding:0 !important;}
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-vehicle-list > * {grid-column:1 !important;min-width:0;}
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-tp-form.is-step-2 .bukap-tp-shell.is-step-2 {display:flex !important;flex-direction:column !important;gap:14px !important;}
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-tp-form.is-step-2 .bukap-tp-shell.is-step-2 > .bukap-tp-main {order:1 !important;width:100% !important;}
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-tp-form.is-step-2 .bukap-tp-shell.is-step-2 > .bukap-tp-summary {order:2 !important;position:static !important;width:100% !important;max-height:none !important;overflow:visible !important;}
}
/* The native engine's older vehicle-visual CSS reserves 255px+ even when the
   representative image has been shrunk. Remove that empty vertical spacer. */
@media screen and (min-width:1100px) {
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-vehicle-card-v2 .bukap-vehicle-visual.bukap-reference-visual {
    min-height: 0 !important;
    height: auto !important;
    padding: 0 !important;
    background: transparent !important;
    justify-content: flex-start !important;
  }
}
/* Mobile: avoid a sticky action bar obscuring the vehicle currently in view.
   Each card retains its native Select ride control, and Continue follows list. */
@media screen and (max-width: 767px) {
  body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-tp-step[data-step="2"] > .bukap-tp-actions.split {
    position: static !important;
    margin: 14px 0 0 !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
  }
}

/* --------------------------------------------------------------------------
   v0.4.6 — Bukap Booking Design System · Step 1 location picker & recovery
   Scope strictly to the dedicated direct-customer experience. No engine data.
   -------------------------------------------------------------------------- */
.bukap-ux2-search,.bukap-ux2-workspace{
  --bukap-ux-ink:#222326;
  --bukap-ux-text:#27313a;
  --bukap-ux-muted:#68737d;
  --bukap-ux-border:#dfe3e6;
  --bukap-ux-surface:#fff;
  --bukap-ux-accent:#1768e8;
  --bukap-ux-focus:rgba(23,104,232,.12);
  font-family:"Open Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  -webkit-font-smoothing:antialiased;
  color:var(--bukap-ux-text);
}
.bukap-ux2-search button,.bukap-ux2-search input,.bukap-ux2-search select,
.bukap-ux2-workspace button,.bukap-ux2-workspace input,.bukap-ux2-workspace select{
  font-family:inherit;
}
.bukap-ux2-search .bukap-ux2-field{
  border:1px solid var(--bukap-ux-border);
  box-shadow:none;
  background:var(--bukap-ux-surface);
  transition:border-color .15s ease,box-shadow .15s ease;
}
.bukap-ux2-search .bukap-ux2-field.is-selected,
.bukap-ux2-search .bukap-ux2-field.is-area,
.bukap-ux2-search .bukap-ux2-field:focus-within{
  border-color:var(--bukap-ux-accent);
  box-shadow:0 0 0 3px var(--bukap-ux-focus);
}
.bukap-ux2-search .bukap-ux2-field label{color:var(--bukap-ux-muted);font-weight:650;letter-spacing:0}
.bukap-ux2-search .bukap-ux2-field input[data-location-main]{cursor:text;text-overflow:ellipsis}
.bukap-ux2-search .bukap-ux2-submit,
.bukap-ux2-search .bukap-ux2-pill{background:var(--bukap-ux-ink);color:#fff}
.bukap-ux2-search .bukap-ux2-submit:hover{background:#080808}
.bukap-ux2-search .bukap-ux2-add{background:#f3f3f2;color:var(--bukap-ux-ink)}
.bukap-ux2-search .bukap-ux2-add:hover{background:#e9e9e8}
/* Leave status available for assistive technology, but never let an inline
   error overlap the Search button or the hero beneath the compact form. */
.bukap-ux2-search .bukap-ux2-status{
  position:absolute!important;width:1px!important;height:1px!important;
  padding:0!important;margin:-1px!important;overflow:hidden!important;
  clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;
}
.bukap-ux2-search .bukap-ux2-support{display:none!important}
.bukap-ux2-search .bukap-ux2-location{z-index:2}
.bukap-ux2-search .bukap-ux2-location:focus-within{z-index:60}
.bukap-ux2-search .bukap-ux2-dropdown{
  box-sizing:border-box;position:absolute;top:calc(100% + 9px);
  left:-2px;right:auto;width:min(410px,calc(100vw - 28px));max-width:none;
  max-height:none;overflow:visible;padding:0;
  border:1px solid #e1e4e8;border-radius:20px;background:#fff;
  box-shadow:0 18px 54px rgba(14,19,26,.19);
  color:var(--bukap-ux-text);z-index:999999;
}
.bukap-ux2-search .bukap-ux2-location[data-side="destination"] .bukap-ux2-dropdown{left:auto;right:-2px}
.bukap-ux2-search .bukap-ux2-picker-title{
  display:flex;align-items:center;gap:10px;padding:17px 17px 12px;
  color:var(--bukap-ux-ink);
}
.bukap-ux2-search .bukap-ux2-picker-title strong{font-size:14px;font-weight:750;line-height:1.35;flex:1}
.bukap-ux2-search .bukap-ux2-picker-pin{display:grid;place-items:center;flex:0 0 27px;height:27px;border-radius:50%;background:#f4f5f6;font-size:19px;font-weight:600}
.bukap-ux2-search .bukap-ux2-picker-title button{
  border:0;background:#f4f5f6;border-radius:50%;width:27px;height:27px;
  display:grid;place-items:center;cursor:pointer;color:#626d79;font-size:19px;
}
.bukap-ux2-search .bukap-ux2-picker-search{
  display:flex;align-items:center;gap:9px;margin:0 15px 11px;padding:2px 12px;
  border:1px solid #dce1e6;border-radius:12px;background:#fbfbfc;
}
.bukap-ux2-search .bukap-ux2-picker-search:focus-within{border-color:var(--bukap-ux-accent);box-shadow:0 0 0 3px var(--bukap-ux-focus)}
.bukap-ux2-search .bukap-ux2-picker-search>span{font-size:22px;color:#737b83;line-height:1}
.bukap-ux2-search .bukap-ux2-picker-search input[data-location-query]{
  box-sizing:border-box;display:block;flex:1;min-width:0;height:43px!important;min-height:43px!important;
  background:transparent!important;box-shadow:none!important;border:0!important;outline:0!important;
  font-size:13px!important;font-weight:500!important;color:var(--bukap-ux-ink)!important;
}
.bukap-ux2-search .bukap-ux2-picker-options{max-height:min(340px,43vh);overflow:auto;overscroll-behavior:contain;padding:0 9px 7px}
.bukap-ux2-search .bukap-ux2-option-head{margin:8px 10px 7px;font-size:10px!important;color:#737d87;font-weight:800;letter-spacing:.09em}
.bukap-ux2-search .bukap-ux2-option{padding:10px 12px;border:0;border-radius:11px;transition:background .12s}
.bukap-ux2-search .bukap-ux2-option:hover,.bukap-ux2-search .bukap-ux2-option:focus-visible{background:#f1f5fc;outline:0}
.bukap-ux2-search .bukap-ux2-option strong{font-size:13px;font-weight:700;color:var(--bukap-ux-ink);line-height:1.3}
.bukap-ux2-search .bukap-ux2-option small{font-size:11px;line-height:1.3;color:var(--bukap-ux-muted);margin:4px 0 0}
.bukap-ux2-search .bukap-ux2-picker-empty{padding:12px;color:var(--bukap-ux-muted);font-size:12px}
.bukap-ux2-search .bukap-ux2-picker-foot{
  margin:0;border-top:1px solid #edf0f2;padding:11px 17px 12px;
  font-size:11px;color:var(--bukap-ux-muted);line-height:1.5;
}
/* Browser-native modal: the failed quote never appears as cramped red text. */
.bukap-ux2-search .bukap-ux2-error-dialog{
  position:fixed;inset:0;margin:auto;box-sizing:border-box;
  border:1px solid #e6e8eb;border-radius:23px;box-shadow:0 30px 100px rgba(0,0,0,.22);
  background:#fff;width:min(480px,calc(100vw - 30px));max-width:480px;
  max-height:min(90vh,700px);overflow:auto;padding:0;color:var(--bukap-ux-text);z-index:2147483000;
}
.bukap-ux2-search .bukap-ux2-error-dialog::backdrop{background:rgba(14,18,24,.55);backdrop-filter:blur(4px)}
.bukap-ux2-search .bukap-ux2-error-content{position:relative;display:flex;flex-direction:column;align-items:center;gap:0;padding:35px 28px 27px;text-align:center}
.bukap-ux2-search .bukap-ux2-modal-close{position:absolute;right:15px;top:15px;border:0;border-radius:50%;width:32px;height:32px;background:#f1f2f4;color:#65707a;cursor:pointer;font-size:21px;display:grid;place-items:center}
.bukap-ux2-search .bukap-ux2-error-mark{width:48px;height:48px;display:grid;place-items:center;background:#fff0e8;color:#d96b27;border-radius:50%;font-weight:800;font-size:26px;margin:0 0 17px}
.bukap-ux2-search .bukap-ux2-error-content h2{margin:0 0 9px;color:var(--bukap-ux-ink);font-size:clamp(19px,4vw,23px);font-weight:800;line-height:1.25;letter-spacing:-.025em}
.bukap-ux2-search .bukap-ux2-error-content [data-error-detail]{margin:0 0 8px;font-size:14px;line-height:1.55;color:#4a5660}
.bukap-ux2-search .bukap-ux2-error-help{margin:0 0 22px;color:var(--bukap-ux-muted);line-height:1.55;font-size:12px}
.bukap-ux2-search .bukap-ux2-error-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%}
.bukap-ux2-search .bukap-ux2-error-actions button,
.bukap-ux2-search .bukap-ux2-error-actions a{box-sizing:border-box;display:flex;justify-content:center;align-items:center;min-height:44px;border-radius:11px;padding:10px 12px;font-size:12px;font-weight:750;text-decoration:none;text-align:center;line-height:1.35;cursor:pointer}
.bukap-ux2-search .bukap-ux2-error-retry{grid-column:1/-1;background:var(--bukap-ux-ink);color:#fff;border:1px solid var(--bukap-ux-ink)}
.bukap-ux2-search [data-error-wa]{border:1px solid #b9cbc1;color:#217448;background:#fff}
.bukap-ux2-search [data-error-email]{border:1px solid #d8dde2;color:var(--bukap-ux-ink);background:#fff}
.bukap-ux2-search .bukap-ux2-error-actions button:hover{background:#000}
.bukap-ux2-search .bukap-ux2-error-actions a:hover{background:#f6f8fa}
.bukap-ux2-search .bukap-ux2-error-actions :focus-visible,.bukap-ux2-search .bukap-ux2-picker-title button:focus-visible{outline:3px solid var(--bukap-ux-focus);outline-offset:2px}
@media (max-width:720px){
  .bukap-ux2-search .bukap-ux2-dropdown{width:min(410px,calc(100vw - 34px));left:0}
  .bukap-ux2-search .bukap-ux2-location[data-side="destination"] .bukap-ux2-dropdown{left:auto;right:0}
  .bukap-ux2-search .bukap-ux2-picker-options{max-height:42vh}
}
@media (max-width:430px){
  .bukap-ux2-search .bukap-ux2-dropdown,.bukap-ux2-search .bukap-ux2-location[data-side="destination"] .bukap-ux2-dropdown{left:0;right:auto;width:min(410px,calc(100vw - 58px))}
  .bukap-ux2-search .bukap-ux2-error-content{padding:34px 18px 20px}
}
.bukap-ux2-search .bukap-ux2-submit.is-loading{opacity:.72;cursor:wait}
.bukap-ux2-search .bukap-ux2-submit.is-loading span{animation:bukap-ux-search-pulse 1s ease-in-out infinite}
@keyframes bukap-ux-search-pulse{50%{opacity:.25}}
@media(prefers-reduced-motion:reduce){.bukap-ux2-search .bukap-ux2-submit.is-loading span{animation:none}}

/* v0.4.7 — quiet black/white transfer confirmation at Step 1. */
.bukap-ux2-transfer-dialog{border:1px solid #e3e3e3;border-radius:22px;padding:0;width:min(440px,calc(100vw - 34px));max-width:calc(100vw - 34px);max-height:min(88dvh,650px);margin:auto;box-shadow:0 24px 95px rgba(0,0,0,.16);background:#fff;color:#242424;font-family:inherit}
.bukap-ux2-transfer-dialog::backdrop{background:rgba(20,20,20,.53);backdrop-filter:blur(5px)}
.bukap-ux2-transfer-content{display:flex;flex-direction:column;align-items:center;padding:34px 28px 27px;text-align:center}
.bukap-ux2-transfer-mark{display:grid;place-items:center;border:1px solid #e0e0e0;background:#f7f7f6;color:#252525;width:48px;height:48px;font-size:24px;border-radius:50%;margin-bottom:17px}
.bukap-ux2-transfer-content h2{font-size:23px;line-height:1.22;letter-spacing:-.03em;color:#242424;margin:0 0 9px;font-weight:750}
.bukap-ux2-transfer-content p{font-size:13px;line-height:1.58;color:#68717a;margin:0 0 24px}
.bukap-ux2-transfer-actions{width:100%;display:grid;gap:9px;grid-template-columns:1fr 1fr}
.bukap-ux2-transfer-actions button{background:#fff;border:1px solid #c9c9c9;color:#252525;padding:11px;border-radius:11px;min-height:48px;cursor:pointer;font-family:inherit;font-size:12px;line-height:1.3;font-weight:700;white-space:normal}
.bukap-ux2-transfer-actions .bukap-ux2-transfer-continue{background:#232323;border-color:#232323;color:#fff}
.bukap-ux2-transfer-actions button:hover{box-shadow:0 0 0 2px rgba(34,34,34,.1)}
.bukap-ux2-transfer-actions button:focus-visible{outline:3px solid #737373;outline-offset:3px}
@media(max-width:500px){.bukap-ux2-transfer-content{padding:29px 18px 20px}.bukap-ux2-transfer-actions{grid-template-columns:1fr}.bukap-ux2-transfer-actions .bukap-ux2-transfer-continue{grid-row:1}}
/* v0.4.7 — neutral full-screen cover, immediately on Search and throughout handoff. */
.bukap-ux2-route-overlay{position:fixed!important;inset:0!important;z-index:2147483000!important;display:flex!important;align-items:center;justify-content:center;padding:20px;background:rgba(236,236,235,.97);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);font-family:inherit;color:#252525}
.bukap-ux2-route-overlay[hidden]{display:none!important}
.bukap-ux2-route-overlay-card{background:#fff;border:1px solid #dededd;border-radius:24px;box-shadow:0 28px 80px rgba(0,0,0,.09);width:min(410px,100%);padding:38px 26px 36px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:9px}
.bukap-ux2-route-gif{height:72px!important;width:72px!important;object-fit:contain;mix-blend-mode:multiply;flex:none;margin-bottom:10px}
.bukap-ux2-route-eyebrow{font-size:10px;letter-spacing:.18em;color:#797979;font-weight:800}
.bukap-ux2-route-overlay-card strong{font-size:clamp(20px,4vw,24px);font-weight:780;letter-spacing:-.025em;line-height:1.24;color:#232323}
.bukap-ux2-route-overlay-card p{font-size:13px;line-height:1.5;color:#747474;margin:3px 0 0}
body.bukap-ux2-route-loading{overflow:hidden!important}
/* The legacy engine must never display the duplicated prompt after a search
   that already confirmed additional transfers on the homepage. Its native
   Continue handler still advances the existing booking workflow. */
body.bukap-ux2-transfer-checked dialog.bukap-extra-transfer-dialog{visibility:hidden!important}
@media(prefers-reduced-motion:reduce){.bukap-ux2-route-gif{animation:none}}

/* v0.4.8 — Equal-sized COP bank / USD PayPal payment options.
   Styling is scoped to the new direct-customer booking page only. */
body.bukap-ux2-booking-page .bukap-ux2-phase3 .bukap-tp-step[data-step="3"] .bukap-payment-card {
  display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px!important;align-items:stretch!important;
}
body.bukap-ux2-booking-page .bukap-ux2-phase3 .bukap-tp-step[data-step="3"] .bukap-payment-card > :not(.bukap-payment-option){grid-column:1/-1!important;}
body.bukap-ux2-booking-page .bukap-ux2-phase3 .bukap-tp-step[data-step="3"] .bukap-payment-card > label.bukap-payment-option {
  box-sizing:border-box!important;width:100%!important;min-width:0!important;min-height:168px!important;
  height:100%!important;margin:0!important;padding:15px!important;
  display:grid!important;grid-template-columns:22px minmax(0,1fr)!important;
  grid-template-rows:auto 1fr auto!important;gap:10px!important;align-content:start!important;
  border:1px solid #d1d1d1!important;border-radius:14px!important;background:#fff!important;
  box-shadow:none!important;color:#252525!important;
}
body.bukap-ux2-booking-page .bukap-ux2-phase3 .bukap-tp-step[data-step="3"] .bukap-payment-card > label.bukap-payment-option:has(input:checked){
  border:2px solid #242424!important;padding:14px!important;background:#f5f5f4!important;box-shadow:none!important;
}
body.bukap-ux2-booking-page .bukap-ux2-phase3 .bukap-tp-step[data-step="3"] .bukap-payment-option > span{grid-column:2!important;min-width:0!important;}
body.bukap-ux2-booking-page .bukap-ux2-phase3 .bukap-ux-payment-logo{
  display:inline-block;width:56px;height:auto;vertical-align:middle;margin-inline-end:7px;
}
body.bukap-ux2-booking-page .bukap-ux2-phase3 .bukap-ux-payment-logo.is-bank-transfer{width:18px;}
body.bukap-ux2-booking-page .bukap-ux2-phase3 .bukap-tp-step[data-step="3"] .bukap-payment-option > b{grid-column:2!important;grid-row:3!important;min-width:0!important;align-self:end!important;justify-self:stretch!important;align-items:flex-start!important;text-align:left!important;white-space:normal!important;}
body.bukap-ux2-booking-page .bukap-ux2-phase3 .bukap-tp-step[data-step="3"] .bukap-payment-option > b .bukap-cop-price{font-size:18px!important;white-space:normal!important;}
body.bukap-ux2-booking-page .bukap-ux2-phase3 .bukap-tp-step[data-step="3"] .bukap-payment-option > b .bukap-approx-usd{font-size:13px!important;white-space:normal!important;}
body.bukap-ux2-booking-page .bukap-ux2-phase3 .bukap-tp-step[data-step="3"] .bukap-payment-option > b .bukap-cop-charge-note{font-size:10px!important;text-align:left!important;max-width:none!important;}
body.bukap-ux2-booking-page .bukap-ux2-phase3 .bukap-payment-option.bukap-ux2-pay-choice::after{
  content:attr(data-ux-currency);position:absolute;right:12px;top:10px;
  background:#f0f0f0;border-radius:8px;padding:3px 7px;color:#333;
  font:700 10px/1.4 'Open Sans',sans-serif;letter-spacing:.05em;
}
body.bukap-ux2-booking-page .bukap-ux2-phase3 .bukap-payment-option.bukap-ux2-pay-choice{position:relative!important;}
@media(max-width:700px){
 body.bukap-ux2-booking-page .bukap-ux2-phase3 .bukap-tp-step[data-step="3"] .bukap-payment-card{grid-template-columns:1fr!important;}
 body.bukap-ux2-booking-page .bukap-ux2-phase3 .bukap-tp-step[data-step="3"] .bukap-payment-card > label.bukap-payment-option{min-height:138px!important;}
}

/* Let the photo frame and gallery footer size the wrapper at every viewport. */
body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-vehicle-card-v2 .bukap-reference-visual.has-real-photo {
  height: auto !important;
  min-height: 0 !important;
  padding: 0 !important;
}
body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-vehicle-card-v2 .has-real-photo .bukap-reference-stage {
  height: auto !important;
  max-height: none !important;
  aspect-ratio: 4 / 3 !important;
}
body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-vehicle-card-v2 .has-real-photo .bukap-reference-stage > img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  mix-blend-mode: normal;
}

/* Give both usable payment currencies equal visual weight. */
body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-vehicle-card-v2 .bukap-vehicle-price {
  display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:7px !important;align-items:stretch !important;
}
body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-vehicle-card-v2:has(.bukap-ux414-price-stack) .bukap-vehicle-price > strong,
body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-vehicle-card-v2 .bukap-vehicle-price > .bukap-approx-usd {
  box-sizing:border-box !important;display:flex !important;flex-direction:column !important;
  justify-content:center !important;grid-column:auto !important;
  min-width:0 !important;min-height:66px !important;padding:8px !important;
  margin:0 !important;border:1px solid #dededc !important;
  border-radius:11px !important;background:#fff !important;
  color:#252525 !important;font:750 clamp(15px,1.25vw,20px)/1.2 'Open Sans',sans-serif !important;
  letter-spacing:-.035em !important;overflow-wrap:anywhere !important;
}
body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-vehicle-price > strong::before,
body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-vehicle-price > .bukap-approx-usd::before {
  display:block;margin-bottom:5px;color:#777;font:700 9px/1.2 'Open Sans',sans-serif !important;
  letter-spacing:.06em !important;
}
body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-vehicle-price > strong::before { content:'BANK · COP'; }
body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-vehicle-price > .bukap-approx-usd::before { content:'PAYPAL · USD'; }
body.bukap-ux2-booking-page .bukap-ux2-phase2[lang="es"] .bukap-vehicle-price > strong::before { content:'BANCO · COP'; }
body.bukap-ux2-booking-page .bukap-ux2-phase2[lang="es"] .bukap-vehicle-price > .bukap-approx-usd::before { content:'PAYPAL · USD'; }
body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-vehicle-card-v2 .bukap-vehicle-price > :not(strong):not(.bukap-approx-usd) {
  grid-column:1/-1 !important;
}
body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-vehicle-card-v2 .bukap-vehicle-price > .bukap-cop-charge-note {
  font-size:10px !important;color:#777 !important;line-height:1.4 !important;
}
body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-vehicle-card-v2 .bukap-ux049-fare-note {
  margin:3px 0 2px !important;padding:7px 0 !important;border-top:1px solid #e9e9e7 !important;
  font-size:10px !important;line-height:1.45 !important;color:#505050 !important;
}
body.bukap-ux2-booking-page .bukap-ux049-payment-notes {
  padding:16px 18px;margin:10px 0 18px;border:1px solid #d9d9d8;border-radius:14px;
  background:#f7f7f6;color:#252525;
}
body.bukap-ux2-booking-page .bukap-ux049-payment-notes strong {display:block;font-size:14px;margin-bottom:6px;}
body.bukap-ux2-booking-page .bukap-ux049-payment-notes p {font-size:12px;line-height:1.55;margin:8px 0 0;color:#545454;}
@media(max-width:470px){
 body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-vehicle-card-v2:has(.bukap-ux414-price-stack) .bukap-vehicle-price > strong,
 body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-vehicle-card-v2 .bukap-vehicle-price > .bukap-approx-usd {
 font-size:16px !important;min-height:62px !important;padding:7px !important;}
}

body.bukap-ux2-booking-page .bukap-ux049-summary-note {
 margin:8px 10px 13px !important;padding:9px 11px !important;background:#f6f6f5 !important;
 border:1px solid #e7e7e6 !important;border-radius:9px !important;
 color:#555 !important;font:500 10px/1.5 'Open Sans',sans-serif !important;
}


/* v0.4.10: premium compact Step 1 and field-focus page scrim.
 * Only affects the public homepage search shortcode. No theme-wide styles. */
.bukap-ux2-focus-backdrop{
  position:fixed!important;inset:0!important;display:block!important;
  width:100vw!important;height:100dvh!important;margin:0!important;
  border:0!important;border-radius:0!important;padding:0!important;
  background:rgba(0,0,0,.62)!important;
  z-index:99960!important;cursor:default!important;
}
.bukap-ux2-focus-backdrop[hidden]{display:none!important}
.bukap-ux2-search.bukap-ux2-focus-active{
  position:relative!important;z-index:99961!important;
  isolation:isolate;
}
.bukap-ux2-search.bukap-ux2-focus-active .bukap-ux2-field:focus-within,
.bukap-ux2-search.bukap-ux2-focus-active .bukap-ux2-dropdown{z-index:99962!important}
.bukap-ux2-paypal-assurance{
  margin-left:auto;display:inline-flex;align-items:center;justify-content:flex-end;
  gap:8px;white-space:nowrap;color:#2a2a2a;font-size:11px;font-weight:600;
}
.bukap-ux2-paypal-check{width:17px;height:17px;flex:none}
.bukap-ux2-paypal-wordmark{height:19px;width:auto;max-width:90px;object-fit:contain;flex:none}
.bukap-ux2-paypal-copy{border-left:1px solid #d4d4d4;padding-left:9px;font-weight:600}
@media(min-width:1150px){
  .bukap-ux2-search.bukap-ux2-premium-compact{
    width:100%;max-width:1410px;padding:9px 15px!important;
    border-radius:18px!important;box-shadow:0 11px 35px rgba(0,0,0,.12)!important;
  }
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-search-head{
    margin:0 0 5px!important;min-height:24px;gap:8px!important;flex-wrap:nowrap;
  }
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-pill{
    padding:3px 13px!important;font-size:11px!important;line-height:18px!important;
  }
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-add{
    padding:3px 11px!important;font-size:11px!important;line-height:18px!important;
  }
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-form{gap:9px!important;}
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-fields{gap:6px!important;}
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-field{
    min-height:47px!important;padding:3px 9px!important;border-radius:11px!important;
  }
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-field label{
    margin-bottom:1px!important;font-size:10px!important;line-height:13px!important;
  }
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-field input,
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-field select{
    height:24px!important;min-height:24px!important;font-size:12px!important;line-height:20px!important;
  }
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-field input::placeholder{font-size:11px!important;}
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-submit{
    min-height:47px!important;padding:7px 15px!important;font-size:13px!important;
    gap:9px!important;line-height:22px!important;
  }
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-form{grid-template-columns:minmax(0,1fr) 133px!important;}
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-submit span{font-size:17px!important;}
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-leg{margin:0!important;}
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-legs{margin:0!important;}
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-bottom{margin:0!important;}
}
@media(min-width:721px) and (max-width:1149px){
  .bukap-ux2-search.bukap-ux2-premium-compact{padding:12px 15px!important;}
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-search-head{margin-bottom:6px!important;}
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-field{min-height:50px!important;padding:6px 9px!important;}
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-submit{min-height:49px!important;}
}
@media(max-width:720px){
  .bukap-ux2-search.bukap-ux2-premium-compact{padding:12px!important;}
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-search-head{gap:6px;margin-bottom:8px;}
  .bukap-ux2-paypal-assurance{flex-basis:100%;justify-content:flex-start;margin:2px 0 0;font-size:10px;}
  .bukap-ux2-paypal-wordmark{height:17px;max-width:76px;}
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-field{min-height:52px;}
}
@media(prefers-reduced-motion:reduce){
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-field{transition:none!important}
}


/* v0.4.11 trust copy and once-only animation, retained by v0.4.12.
 * Wide-screen positioning and responsive layout are overridden below. */
.bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-trust-strip{
  margin-left:auto;min-width:0;display:flex;flex:0 1 auto;align-items:center;
  justify-content:flex-end;gap:10px;white-space:nowrap;
  color:#3f4347;font:600 11px/1.2 'Open Sans',Arial,sans-serif;
}
.bukap-ux2-search .bukap-ux2-cancellation{
  display:inline-flex;align-items:center;gap:6px;white-space:nowrap;
  font-weight:600;color:#464a4e;
}
.bukap-ux2-search .bukap-ux2-calendar-check{display:block;flex:none;width:14px;height:14px}
.bukap-ux2-search .bukap-ux2-trust-divider{
  display:block;flex:none;height:16px;width:1px;background:#dadcde;
}
.bukap-ux2-search .bukap-ux2-cancel-short{display:none}
.bukap-ux2-search .bukap-ux2-paypal-assurance{
  display:inline-flex;align-items:center;gap:6px;justify-content:flex-end;
  margin:0;flex:0 0 auto;font:600 11px/1.2 'Open Sans',Arial,sans-serif;
}
.bukap-ux2-search .bukap-ux2-paypal-copy{
  border-left:0;padding-left:0;margin:0;white-space:nowrap;
}
.bukap-ux2-search .bukap-ux2-paypal-wordmark{height:17px;max-width:80px}
.bukap-ux2-search .bukap-ux2-paypal-check{width:17px;height:17px;flex:none;transform-origin:50% 50%}
/* Starts only after visible: static check is the no-JS/reduced-motion fallback. */
@keyframes bukap-ux2-check-appear{
  0%{transform:scale(.84);opacity:.6}
  65%{transform:scale(1.07);opacity:1}
  100%{transform:scale(1);opacity:1}
}
@keyframes bukap-ux2-check-draw{
  from{stroke-dashoffset:19}to{stroke-dashoffset:0}
}
.bukap-ux2-search .bukap-ux2-paypal-check.is-animated{
  animation:bukap-ux2-check-appear .48s cubic-bezier(.23,.95,.45,1) both;
}
.bukap-ux2-search .bukap-ux2-paypal-check.is-animated path{
  stroke-dasharray:19;animation:bukap-ux2-check-draw .45s ease-out .07s both;
}
@media(min-width:1150px){
  .bukap-ux2-search.bukap-ux2-premium-compact{
    padding:6px 13px!important;
  }
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-search-head{
    min-height:22px;margin:0 0 3px!important;gap:7px!important;
  }
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-field{
    min-height:43px!important;padding:2px 8px!important;
  }
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-field input,
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-field select{
    height:22px!important;min-height:22px!important;
  }
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-submit{min-height:43px!important;}
}
@media(min-width:721px) and (max-width:1149px){
  .bukap-ux2-search.bukap-ux2-premium-compact{padding:8px 12px!important;}
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-search-head{margin-bottom:4px!important;}
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-field{min-height:46px!important;}
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-submit{min-height:46px!important;}
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-trust-strip{gap:7px;font-size:10px;}
  .bukap-ux2-search .bukap-ux2-cancel-full{display:none}
  .bukap-ux2-search .bukap-ux2-cancel-short{display:inline}
}
@media(max-width:720px){
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-search-head{margin-bottom:6px;}
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-trust-strip{
    flex-basis:100%;width:100%;justify-content:space-between;gap:7px;
    margin:0;font-size:10px;
  }
  .bukap-ux2-search .bukap-ux2-cancel-full{display:none}
  .bukap-ux2-search .bukap-ux2-cancel-short{display:inline}
  .bukap-ux2-search .bukap-ux2-calendar-check{width:13px;height:13px}
  .bukap-ux2-search .bukap-ux2-trust-divider{height:13px}
  .bukap-ux2-search .bukap-ux2-paypal-assurance{
    flex-basis:auto;justify-content:flex-end;margin:0;gap:4px;font-size:10px;
  }
  .bukap-ux2-search .bukap-ux2-paypal-wordmark{height:14px;max-width:61px}
  .bukap-ux2-search .bukap-ux2-paypal-check{width:14px;height:14px}
  .bukap-ux2-search.bukap-ux2-premium-compact{padding:10px 12px!important}
}
@media(max-width:365px){
  .bukap-ux2-search .bukap-ux2-calendar-check{display:none}
  .bukap-ux2-search .bukap-ux2-paypal-copy{font-size:9px}
  .bukap-ux2-search .bukap-ux2-trust-divider{display:none}
}
@media(prefers-reduced-motion:reduce){
  .bukap-ux2-search .bukap-ux2-paypal-check.is-animated,
  .bukap-ux2-search .bukap-ux2-paypal-check.is-animated path{animation:none!important}
}

/* v0.4.12 — Approved responsive trust-strip placement.
 * Keep ONE source of truth for the cancellation / PayPal copy and the one-shot
 * checkmark animation. In mobile markup this follows the last trip fields and
 * precedes Search. On wide desktop it is visually tucked into the top header
 * row without allocating an extra row or changing the quote form fields. */
.bukap-ux2-search.bukap-ux2-premium-compact{position:relative}
@media (min-width:1150px){
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-trust-strip{
    position:absolute;top:10px;right:14px;left:auto;width:auto;
    margin:0!important;padding:0;display:inline-flex;flex-wrap:nowrap;
    align-items:center;justify-content:flex-end;gap:7px;
    font-size:10px!important;line-height:1.15!important;
    z-index:1;pointer-events:none;
  }
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-cancellation,
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-paypal-assurance{
    gap:5px;font-size:10px!important;line-height:1.15!important;
  }
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-calendar-check{width:11px;height:11px}
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-paypal-check{width:13px;height:13px}
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-paypal-wordmark{height:14px;max-width:68px}
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-trust-divider{height:12px}
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-search-head{padding-right:0}
}
@media (min-width:721px) and (max-width:1149px){
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-trust-strip{
    margin:9px 0 11px!important;justify-content:flex-end;gap:7px;
    font-size:10px!important;
  }
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-calendar-check{width:12px;height:12px}
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-paypal-check{width:14px;height:14px}
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-paypal-wordmark{height:15px;max-width:68px}
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-bottom{margin-top:0!important}
}
@media (max-width:720px){
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-form{
    display:flex!important;flex-direction:column!important;gap:0!important;
  }
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-legs{order:1;width:100%;}
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-trust-strip{
    order:2;position:static;width:100%;min-height:20px;
    margin:16px 0 18px!important;padding:0 2px!important;
    display:flex;align-items:center;justify-content:center!important;
    flex-wrap:wrap;column-gap:8px;row-gap:5px;
    font-size:11px!important;line-height:1.4!important;
  }
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-bottom{
    order:3;display:flex!important;flex-direction:column!important;
    width:100%;margin:0!important;padding:0!important;gap:0!important;
  }
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-submit{margin:0!important;width:100%;}
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-trav{grid-column:1/-1}
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-calendar-check{width:12px;height:12px}
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-paypal-check{width:14px;height:14px}
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-paypal-assurance{font-size:11px!important}
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-paypal-wordmark{height:14px;max-width:59px}
}
@media(max-width:365px){
  .bukap-ux2-search.bukap-ux2-premium-compact .bukap-ux2-trust-strip{column-gap:6px;row-gap:7px;margin:15px 0 17px!important;}
}

/* v0.4.13: iPhone controls must never overlap. Native click targets are moved
   into a dedicated flex column while their original listeners remain attached. */
body.bukap-ux2-booking-page .bukap-ux413-ride-actions{
  display:flex!important;flex-direction:column!important;align-items:stretch!important;
  gap:9px!important;position:static!important;isolation:isolate;
  margin:12px 0 10px!important;padding:0!important;min-height:0!important;
  width:100%!important;flex:0 0 auto!important;
}
body.bukap-ux2-booking-page .bukap-ux413-ride-actions .bukap-select-vehicle{
  display:block!important;position:static!important;inset:auto!important;transform:none!important;
  flex:0 0 auto!important;width:100%!important;max-width:100%!important;
  height:auto!important;min-height:46px!important;margin:0!important;padding:12px 10px!important;
  background:#222!important;color:#fff!important;border-radius:10px!important;
  text-align:center!important;line-height:1.3!important;white-space:normal!important;z-index:auto!important;
}
body.bukap-ux2-booking-page .bukap-ux413-ride-actions .bukap-upgrade{
  display:block!important;position:static!important;inset:auto!important;transform:none!important;
  flex:0 0 auto!important;width:100%!important;height:auto!important;min-height:35px!important;
  margin:0!important;padding:8px 6px!important;background:transparent!important;
  color:#252525!important;font-size:12px!important;font-weight:700!important;
  text-align:center!important;text-decoration:underline!important;text-underline-offset:3px!important;
  border:0!important;line-height:1.3!important;z-index:auto!important;
}
body.bukap-ux2-booking-page .bukap-ux413-ride-actions button:focus-visible{outline:2px solid #333!important;outline-offset:2px!important}
/* Native payment renderer owns exact values. The UX places the usable payment
   currency first; the alternative currency becomes the secondary line. */
body.bukap-ux2-booking-page .bukap-ux413-payment-option > b > :not(.bukap-ux413-currency-display){display:none!important}
body.bukap-ux2-booking-page .bukap-ux413-payment-option > b{
  grid-row:3!important;grid-column:2!important;display:block!important;min-width:0!important;
  font-size:inherit!important;line-height:1.3!important;overflow-wrap:normal!important;
}
body.bukap-ux2-booking-page .bukap-ux413-currency-display{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:4px!important;min-width:0!important}
body.bukap-ux2-booking-page .bukap-ux413-main-amount{display:block!important;color:#202020!important;font-size:clamp(19px,2vw,25px)!important;letter-spacing:-.015em!important;font-weight:800!important;line-height:1.2!important;white-space:normal!important}
body.bukap-ux2-booking-page .bukap-ux413-other-amount{display:block!important;color:#626262!important;font-size:13px!important;font-weight:600!important;line-height:1.3!important;white-space:normal!important}
body.bukap-ux2-booking-page .bukap-ux413-payment-option > span > small{font-weight:500!important;line-height:1.45!important;font-size:11px!important;color:#505050!important}
body.bukap-ux2-booking-page .bukap-ux2-phase3 .bukap-payment-option.bukap-ux2-pay-choice{min-width:0!important}
/* Hide redundant payment-method explainer: both options now include real
   payment instructions on the native option cards. */
body.bukap-ux2-booking-page .bukap-ux049-payment-notes{display:none!important}
/* Booking recap: no concatenated price string, no clipped text. */
body.bukap-ux2-booking-page .bukap-ux3-review-total,
body.bukap-ux2-booking-page .bukap-ux3-payment-status{
  display:grid!important;grid-template-columns:minmax(80px,110px) minmax(0,1fr)!important;
  align-items:start!important;column-gap:12px!important;min-width:0!important;
  border-top:1px solid #e5e5e5!important;padding-top:12px!important;
}
body.bukap-ux2-booking-page .bukap-ux3-review-total [data-ux3-total]{
  display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:9px!important;min-width:0!important;color:#202020!important;
  font-size:clamp(13px,3.4vw,18px)!important;font-weight:800!important;line-height:1.3!important;
}
body.bukap-ux2-booking-page .bukap-ux3-review-total [data-ux3-total] > span{
  display:block!important;min-width:0!important;overflow-wrap:normal!important;
  border-radius:9px!important;background:#f4f4f3!important;padding:10px 8px!important;
  text-align:center!important;white-space:nowrap!important;
}
body.bukap-ux2-booking-page .bukap-ux3-payment-status [data-ux3-method]{
  min-width:0!important;overflow-wrap:break-word!important;text-align:left!important;
  font-size:12px!important;line-height:1.4!important;color:#242424!important;
}
body.bukap-ux2-booking-page .bukap-ux3-review-item{min-width:0!important}
body.bukap-ux2-booking-page .bukap-ux3-review-item > div{min-width:0!important}
/* Checkout policy registry: each affirmative act is separate and opt-in. */
body.bukap-ux2-booking-page .bukap-ux413-has-policies .bukap-policy-card{display:none!important}
body.bukap-ux2-booking-page .bukap-ux413-policy-list{display:block!important;padding:18px!important;border-radius:16px!important;border:1px solid #dedede!important;background:#fff!important}
body.bukap-ux2-booking-page .bukap-ux413-policy-list h3{margin:0 0 6px!important;font-size:18px!important;color:#222!important}
body.bukap-ux2-booking-page .bukap-ux413-policy-note{font-size:12px!important;line-height:1.5!important;color:#5c5c5c!important;margin:0 0 14px!important}
body.bukap-ux2-booking-page .bukap-ux413-policy-row{position:relative!important;padding:12px 0!important;border-top:1px solid #e9e9e9!important;min-width:0!important}
body.bukap-ux2-booking-page .bukap-ux413-policy-accept{display:flex!important;gap:12px!important;align-items:flex-start!important;cursor:pointer!important;font-size:13px!important;font-weight:700!important;color:#242424!important;line-height:1.45!important}
body.bukap-ux2-booking-page .bukap-ux413-policy-accept input{width:20px!important;height:20px!important;min-width:20px!important;min-height:20px!important;margin:0!important;accent-color:#242424!important}
body.bukap-ux2-booking-page .bukap-ux413-optional{display:block!important;margin:4px 0 0 32px!important;color:#626262!important;font-size:11px!important}
body.bukap-ux2-booking-page .bukap-ux413-policy-details{margin:7px 0 0 32px!important;color:#555!important;font-size:12px!important;line-height:1.55!important}
body.bukap-ux2-booking-page .bukap-ux413-policy-details summary{color:#303030!important;text-decoration:underline!important;cursor:pointer!important}
body.bukap-ux2-booking-page .bukap-ux413-policy-details p{margin:7px 0 0!important;white-space:pre-wrap!important}
@media(max-width:767px){
  body.bukap-ux2-booking-page .bukap-ux413-ride-actions{margin:13px 0 12px!important;gap:9px!important}
  body.bukap-ux2-booking-page .bukap-ux413-ride-actions .bukap-select-vehicle{min-height:48px!important;font-size:13px!important}
  body.bukap-ux2-booking-page .bukap-ux413-ride-actions .bukap-upgrade{min-height:38px!important;font-size:12px!important}
  body.bukap-ux2-booking-page .bukap-ux3-review-total{grid-template-columns:70px minmax(0,1fr)!important;gap:7px!important}
  body.bukap-ux2-booking-page .bukap-ux3-review-total [data-ux3-total]{font-size:clamp(11px,3.4vw,16px)!important;gap:5px!important}
  body.bukap-ux2-booking-page .bukap-ux3-review-total [data-ux3-total] > span{padding:9px 4px!important}
}

body.bukap-ux2-booking-page .bukap-ux413-payment-option > span{display:block!important;min-width:0!important}
body.bukap-ux2-booking-page .bukap-ux413-payment-option > span > strong{display:block!important;max-width:calc(100% - 35px)!important;margin-bottom:7px!important;line-height:1.35!important}
body.bukap-ux2-booking-page .bukap-ux413-payment-option > span > small{display:block!important;min-width:0!important;margin-top:7px!important}
/* The mobile checkout action bar must not cover the policy or payment cards. */
@media(max-width:767px){
 body.bukap-ux2-booking-page .bukap-ux2-phase3 .bukap-tp-step[data-step="3"] .bukap-final-actions{
  position:static!important;bottom:auto!important;display:grid!important;grid-template-columns:1fr!important;
  gap:10px!important;margin:18px 0!important;padding:0!important;background:transparent!important;
  border:0!important;box-shadow:none!important;backdrop-filter:none!important;
 }
 body.bukap-ux2-booking-page .bukap-ux2-phase3 .bukap-tp-step[data-step="3"] .bukap-final-actions button{
  width:100%!important;min-width:0!important;min-height:46px!important;margin:0!important;
 }
}

/* v0.4.14 — Direct checkout. Neutral, consistent with the Bukap theme. */
body.bukap-ux2-booking-page{--bukap-blue:#292929!important;--ux2-blue:#292929!important;scroll-padding-top:104px}
body.bukap-ux2-booking-page .bukap-ux2-phase2{--bukap-blue:#292929!important;--ux2-blue:#292929!important;--ux2-ink:#202020!important;--ux2-paper:#f8f8f7!important}
body.bukap-ux2-booking-page .bukap-ux2-workspace{margin-top:0!important}
body.bukap-ux2-booking-page #bukap-main > .standard-page > .standard-page-inner{padding-top:8px!important}
body.bukap-ux2-booking-page .standard-page-inner > .standard-page-header,
body.bukap-ux2-booking-page > .bukap-journey-dock{display:none!important}
body.bukap-ux2-booking-page .standard-page-inner > .entry-content{max-width:none}
body.bukap-ux2-booking-page [data-bukap-direct-entry][hidden],
body.bukap-ux2-booking-page [data-bukap-direct-booking][hidden]{display:none!important}
body.bukap-ux2-booking-page .bukap-ux2-resume{display:block;margin:12px auto 0;padding:5px;border:0;background:none;color:#454545;text-decoration:underline;cursor:pointer;font:inherit;font-size:.875rem}
body.bukap-ux2-booking-page :is(.site-main,main#main,.entry-content,.site-content,.elementor-widget-shortcode){padding-top:0!important;margin-top:0!important}
body.bukap-ux2-booking-page .bukap-ux2-phase2{margin-top:0!important;padding-top:8px!important}
body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-tp-progress{margin-top:0!important}
body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-tp-progress .current:after{background:#282828!important}
body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-tp-kicker,
body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-ride-head>div>span,
body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-vehicle-more summary,
body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-real-gallery-trigger,
body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-upgrade,
body.bukap-ux2-booking-page .bukap-ux2-phase2 [data-ux-edit],
body.bukap-ux2-booking-page .bukap-ux2-phase3 .bukap-ux3-intro .bukap-ux3-eyebrow{color:#343434!important}
body.bukap-ux2-booking-page .bukap-ux2-notice{border-left-color:#555!important;background:#f0f0ef!important;color:#303030!important}
body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-tp-booker .bukap-vehicle-card-v2.selected,
body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-vehicle-card.selected{border:2px solid #303030!important;box-shadow:0 7px 23px rgba(0,0,0,.065)!important;background:#fff!important}
body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-vehicle-card-v2.selected::after{content:'✓'!important;right:12px!important;top:10px!important;width:21px!important;height:21px!important;background:#168148!important;font-size:12px!important}
body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-card-eyebrow-row{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:6px!important;padding-right:23px!important;flex-wrap:wrap!important}
body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-card-head{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;grid-template-rows:auto 1fr!important;gap:7px 8px!important;margin-right:0!important;min-height:0!important}
body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-card-head .bukap-card-eyebrow-row{grid-column:1/-1!important}
body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-ux414-card-title{min-width:0;align-self:start}
body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-ux414-price-stack{display:grid;align-content:start;gap:4px;min-width:0;justify-items:end}
body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-ux414-money-line{display:flex;align-items:center;justify-content:flex-end;gap:5px;min-width:0;white-space:nowrap;font-size:clamp(10px,.84vw,13px)!important;line-height:1.25!important;color:#252525!important}
body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-ux414-money-line strong{font:inherit!important;font-weight:800!important;white-space:nowrap!important;color:#252525!important}
body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-ux414-money-icon{display:block;width:14px;height:auto;flex:none;object-fit:contain}
body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-ux414-money-line.paypal .bukap-ux414-money-icon{width:clamp(36px,4.2vw,54px)}
body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-vehicle-card-v2:has(.bukap-ux414-price-stack) .bukap-vehicle-price>:is(strong,.bukap-approx-usd,.bukap-cop-charge-note){display:none!important}
body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-vehicle-card-v2:has(.bukap-ux414-price-stack) .bukap-vehicle-price>span{display:none!important}
body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-vehicle-card-v2:has(.bukap-ux414-price-stack) .bukap-vehicle-price{margin-top:0!important;padding-top:0!important;min-height:0!important}
body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-ux413-ride-actions{margin-top:auto!important}
body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-vehicle-card-v2.selected .bukap-reference-stage::after{display:none!important}
body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-select-vehicle{background:#242424!important;color:white!important;border-color:#242424!important}
body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-support-card{display:grid!important;grid-template-columns:1fr!important;justify-items:center!important;text-align:center!important;gap:10px!important}
body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-support-card>div{margin-left:auto!important;margin-right:auto!important;max-width:750px!important}
body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-support-card a{min-width:min(230px,100%)!important;justify-content:center!important}
body.bukap-ux2-booking-page .bukap-host-decision .bukap-decision-blue{background:#222!important;border-color:#222!important;color:#fff!important}
body.bukap-ux2-booking-page .bukap-host-decision .bukap-decision-gray{background:#fff!important;border:1px solid #b9b9b9!important;color:#222!important}
body.bukap-ux2-booking-page .bukap-host-decision .bukap-decision-eyebrow{color:#343434!important}
body.bukap-ux2-booking-page .bukap-host-decision .bukap-decision-price:has(.bukap-ux414-host-prices)>strong{display:none!important}
body.bukap-ux2-booking-page .bukap-host-decision .bukap-ux414-host-prices{display:flex;flex-direction:column;align-items:flex-end;gap:4px}
body.bukap-ux2-booking-page .bukap-host-decision .bukap-ux414-host-prices strong,
body.bukap-ux2-booking-page .bukap-host-decision .bukap-ux414-host-prices span{font-size:16px!important;line-height:1.2!important;font-weight:750!important;color:#202020!important}
body.bukap-ux2-booking-page :is(button,input,select,a):focus-visible{outline:2px solid #444!important;outline-offset:2px!important}
body.bukap-ux2-booking-page .bukap-ux2-route-overlay-card{border-radius:20px!important;width:min(390px,100%)!important;padding:30px 22px!important}
body.bukap-ux2-booking-page .bukap-ux2-route-overlay-card strong{font-size:18px!important}
@media (min-width:1100px){body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-card-head h3{font-size:18px!important}}
@media (max-width:767px){body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-card-head{gap:7px!important}body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-ux414-money-line{font-size:clamp(10.5px,3vw,12px)!important}body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-ux414-price-stack{max-width:136px!important}}

/* Match the first-page and destination-page loading cards: identical dimensions, GIF, and wording. */
.bukap-ux2-route-overlay-card{width:min(390px,100%)!important;min-height:185px!important;padding:26px 18px 26px!important;gap:0!important;border-radius:20px!important}
.bukap-ux2-route-overlay-card .bukap-ux2-route-gif{width:58px!important;height:58px!important;margin:0 auto 21px!important}
.bukap-ux2-route-overlay-card .bukap-ux2-route-eyebrow,.bukap-ux2-route-overlay-card p{display:none!important}
.bukap-ux2-route-overlay-card>strong{font:700 17px/1.4 'Open Sans',Arial,sans-serif!important;letter-spacing:0!important;color:#222!important}
body.bukap-ux2-booking-page .bukap-support-card .bukap-support-actions,body.bukap-ux2-booking-page .bukap-support-card .bukap-support-links{display:flex!important;justify-content:center!important;gap:12px!important;flex-wrap:wrap!important;width:100%!important}
/* Retire the old v0.4.9 dual-price boxes in vehicle cards. Values remain in
   the DOM as native data sources, but only the new compact header is visible. */
body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-vehicle-card-v2:has(.bukap-ux414-price-stack) .bukap-vehicle-price > strong,
body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-vehicle-card-v2:has(.bukap-ux414-price-stack) .bukap-vehicle-price > .bukap-approx-usd,
body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-vehicle-card-v2:has(.bukap-ux414-price-stack) .bukap-vehicle-price > .bukap-cop-charge-note,
body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-vehicle-card-v2:has(.bukap-ux414-price-stack) .bukap-vehicle-price > span:not(.bukap-ux414-price-stack){display:none!important;}
body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-vehicle-card-v2:has(.bukap-ux414-price-stack) .bukap-vehicle-price{
  display:block!important;grid-template-columns:none!important;gap:0!important;padding:0!important;margin-top:0!important;
}
body.bukap-ux2-booking-page .bukap-ux2-phase2 .bukap-vehicle-card-v2 .bukap-vehicle-price > .bukap-ux049-fare-note{
 display:block!important;margin:9px 0 0!important;padding:8px 0 0!important;
}
