/* Scoped V1.1 design. No external fonts or site-wide overrides. */
.ptb-booking{--ptb-ink:#172126;--ptb-muted:#59656b;--ptb-yellow:#ffd21c;--ptb-border:#e1e6e7;max-width:1240px;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;line-height:1.55;letter-spacing:0}
.ptb-booking h2,.ptb-booking h3,.ptb-booking input,.ptb-booking select,.ptb-booking textarea,.ptb-booking button{font-family:inherit!important}
.ptb-booking .ptb-shell{border-radius:24px;box-shadow:0 24px 80px #15232d0c;overflow:clip}
.ptb-booking .ptb-top{padding:25px 36px;background:#172126}.ptb-booking .ptb-brand{font-size:20px;letter-spacing:-.5px}.ptb-booking .ptb-small{font-size:10px;letter-spacing:1.1px}
.ptb-booking .ptb-steps{padding:25px 36px!important;gap:24px;background:#fff}.ptb-booking .ptb-steps li{font-size:12px;gap:10px;position:relative}.ptb-booking .ptb-steps li:not(:last-child):after{content:"";height:1px;background:#e0e5e5;flex:1;margin-left:10px}.ptb-booking .ptb-steps li span{width:30px;height:30px;background:#f1f3f3;font-size:11px}.ptb-booking .ptb-steps .is-active span{background:#172126;color:#fff}.ptb-booking .ptb-steps [aria-current=step] span{background:#ffd21c;color:#172126}
.ptb-booking .ptb-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px}.ptb-booking .ptb-form{min-width:0;padding:38px}.ptb-booking .ptb-eyebrow{font-size:10px;font-weight:800;letter-spacing:1.8px;color:#667176;margin-bottom:14px}.ptb-booking h2{font-size:clamp(25px,3vw,36px);letter-spacing:-1.2px;line-height:1.16;max-width:550px;margin-bottom:12px}.ptb-booking .ptb-form>p.ptb-muted{font-size:14px;max-width:500px;line-height:1.7}
.ptb-booking .ptb-fields{gap:20px;margin:30px 0 24px}.ptb-booking .ptb-field{font-size:12px;font-weight:650;gap:9px}.ptb-booking .ptb-field input,.ptb-booking .ptb-field select,.ptb-booking .ptb-field textarea{border:1px solid #c5ced1;background:#fafbfb;border-radius:10px;font-size:14px;padding:15px 12px;min-height:54px;transition:border-color .15s,background .15s}.ptb-booking .ptb-field input:focus,.ptb-booking .ptb-field select:focus,.ptb-booking .ptb-field textarea:focus{background:#fff;border-color:#172126}.ptb-booking .ptb-check{font-size:13px;line-height:1.65}.ptb-booking .ptb-hint{font-size:12px;line-height:1.75}.ptb-booking .ptb-actions{gap:12px;padding-top:24px;margin-top:30px}.ptb-booking .ptb-primary{font-size:13px;padding:15px 22px;border-radius:10px;min-height:52px;box-shadow:0 4px 0 #17212608}.ptb-booking .ptb-back{font-size:13px;border-color:#d2dadd;padding:12px 15px}.ptb-booking .ptb-support{font-size:12px}
.ptb-booking .ptb-trip{background:#f4f6f5;border-left:1px solid #e1e6e7;padding:35px 25px;min-width:0}.ptb-booking .ptb-trip-inner{position:sticky;top:24px}.ptb-booking .ptb-trip h3{font-size:21px;line-height:1.25;letter-spacing:-.65px;margin-bottom:25px}.ptb-booking .ptb-trip-route{font-size:17px;font-weight:750;line-height:1.5;border-left:3px solid #d7ad00;padding-left:14px;margin-bottom:24px}.ptb-booking .ptb-trip dl{margin:0}.ptb-booking .ptb-trip dt{font-size:11px;color:#637076;margin-top:20px}.ptb-booking .ptb-trip dd{font-size:13px;font-weight:600;overflow-wrap:anywhere;margin:5px 0 0}.ptb-booking .ptb-trip-price{border-top:1px solid #d9dfdd;margin-top:26px;padding-top:23px;display:flex;flex-direction:column;gap:6px}.ptb-booking .ptb-trip-price>span{font-size:11px}.ptb-booking .ptb-trip-price strong{font-size:22px;letter-spacing:-.7px;line-height:1.3}.ptb-booking .ptb-trip-price small{font-size:11px;color:#59656b}.ptb-booking .ptb-trip-note{margin-top:30px;padding:17px;background:#e9eeeb;border-radius:10px;font-size:12px}.ptb-booking .ptb-trip-note p{margin:7px 0 0;color:#59656b;line-height:1.7}
.ptb-booking .ptb-vehicles{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:28px}.ptb-booking .ptb-vehicle{border:1px solid #d5dedd;border-radius:15px;padding:18px;gap:8px;transition:box-shadow .15s,border-color .15s;min-width:0}.ptb-booking .ptb-vehicle:not(.is-disabled):hover{border-color:#7e8c8a;box-shadow:0 8px 24px #15232d0b}.ptb-booking .ptb-vehicle.is-selected{border:2px solid #8c7100;padding:17px;background:#fffdf2;box-shadow:0 0 0 3px #ffd21c22}.ptb-booking .ptb-vehicle:has(input:focus-visible){outline:3px solid #226ea1;outline-offset:3px}.ptb-booking .ptb-vehicle input{top:14px;right:14px;width:19px;height:19px;z-index:1}.ptb-booking .ptb-vehicle-art{padding:16px 0 0;margin:0 0 8px;aspect-ratio:3/2;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:8px}.ptb-booking .ptb-vehicle-art img{display:block;width:100%;height:100%;max-width:100%;object-fit:contain;border-radius:7px}.ptb-booking .ptb-vehicle-art svg{height:100%;max-height:120px}.ptb-booking .ptb-vehicle strong{font-size:18px;letter-spacing:-.5px}.ptb-booking .ptb-capacity{font-size:11px;margin-top:10px;padding-top:14px}.ptb-booking .ptb-fare{font-size:29px;letter-spacing:-1px;margin-top:5px}.ptb-booking .ptb-vehicle.is-disabled{background:#f3f5f5}.ptb-booking .ptb-vehicle.is-disabled img{filter:grayscale(1);opacity:.65}.ptb-booking .ptb-fit{font-size:11px}.ptb-booking .ptb-setup{font-size:12px;padding:12px 36px}.ptb-booking .ptb-terms{font-size:12px;line-height:1.8}.ptb-booking .ptb-contact-summary{padding:20px;border:1px solid #e1e6e7;border-radius:12px;font-size:14px;line-height:1.9;overflow-wrap:anywhere}.ptb-booking .ptb-total{background:#fff9df}.ptb-booking .ptb-leg{font-size:14px}.ptb-booking .ptb-done{max-width:850px;margin:auto;padding:45px}
@media(max-width:1000px){.ptb-booking .ptb-layout{grid-template-columns:minmax(0,1fr) 250px}.ptb-booking .ptb-form{padding:28px}.ptb-booking .ptb-trip{padding:28px 20px}.ptb-booking .ptb-fields{grid-template-columns:1fr}}
@media(max-width:760px){.ptb-booking .ptb-layout{grid-template-columns:1fr}.ptb-booking .ptb-trip{border-left:0;border-top:1px solid #e1e6e7}.ptb-booking .ptb-trip-inner{position:static}.ptb-booking .ptb-trip dl{display:grid;grid-template-columns:1fr 1fr;gap:8px 18px}.ptb-booking .ptb-trip dt{margin:0}.ptb-booking .ptb-trip dd{margin:0}.ptb-booking .ptb-trip-note{margin-top:18px}.ptb-booking .ptb-top{padding:22px 24px}.ptb-booking .ptb-steps{padding:20px 24px!important;gap:10px}.ptb-booking .ptb-steps li:not(:last-child):after{display:none}.ptb-booking .ptb-fields{grid-template-columns:1fr 1fr}.ptb-booking .ptb-setup{padding:12px 24px}}
@media(max-width:560px){.ptb-booking .ptb-shell{border-radius:16px}.ptb-booking .ptb-form{padding:25px 18px}.ptb-booking .ptb-fields{grid-template-columns:1fr;gap:18px}.ptb-booking .ptb-vehicles{grid-template-columns:1fr;gap:16px}.ptb-booking .ptb-vehicle-art{max-height:210px;width:100%;aspect-ratio:3/2}.ptb-booking .ptb-vehicle{padding:20px}.ptb-booking .ptb-vehicle.is-selected{padding:19px}.ptb-booking .ptb-actions{flex-direction:column-reverse}.ptb-booking .ptb-primary{width:100%}.ptb-booking .ptb-done{padding:28px 18px}.ptb-booking .ptb-steps li{font-size:11px}.ptb-booking .ptb-trip{padding:25px 20px}.ptb-booking h2{letter-spacing:-.8px}.ptb-booking .ptb-field input{min-width:0}}
