.ofr-booking{--ofr-line:#d9e2ed;--ofr-muted:#52647b;--ofr-accent:#1769e0;max-width:920px;margin:28px auto;background:#fff;color:#14253e;border:1px solid var(--ofr-line);border-radius:20px;overflow:hidden;font-family:system-ui,-apple-system,sans-serif;line-height:1.5;box-shadow:0 18px 55px rgba(20,37,62,.1)}
.ofr-booking,.ofr-booking *{box-sizing:border-box}.ofr-booking [hidden]{display:none!important}.ofr-booking__intro,.ofr-booking__form{padding:24px 34px}.ofr-booking__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 24px}.ofr-field{display:flex;flex-direction:column;gap:8px;min-width:0;margin:0}.ofr-field--wide{grid-column:1/-1}.ofr-field>span{font-weight:650;font-size:.92rem}.ofr-field b{color:#bf253e}.ofr-booking .ofr-field input,.ofr-booking .ofr-field select,.ofr-booking .ofr-field textarea{display:block;width:100%;max-width:100%;min-width:0;min-height:48px;margin:0;padding:11px 13px;border:1px solid var(--ofr-line);border-radius:9px;background:#fff;color:#14253e;font:inherit;font-size:16px;line-height:1.4}.ofr-field small{color:var(--ofr-muted);font-size:.8rem}.ofr-booking input:focus-visible,.ofr-booking select:focus-visible,.ofr-booking textarea:focus-visible,.ofr-booking button:focus-visible,.ofr-booking a:focus-visible{outline:3px solid #8abaff;outline-offset:3px}.ofr-booking .ofr-consent input{flex:0 0 18px;width:18px;height:18px;padding:0}.ofr-booking .ofr-needs,.ofr-booking .ofr-pickup-mode{min-width:0;margin:0;padding:18px;border:1px solid var(--ofr-line);border-radius:12px}.ofr-needs legend,.ofr-pickup-mode legend{font-weight:650;padding:0 6px}.ofr-service-note,.ofr-service-hours,.ofr-route-status{margin:0;color:var(--ofr-muted);font-size:.85rem}.ofr-route-tools{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.ofr-booking button{font:inherit;cursor:pointer}.ofr-route-button{padding:12px 16px;background:#edf4ff;color:#174f9f;border:1px solid #c9dcfa;border-radius:9px;min-height:48px}.ofr-booking button:disabled{opacity:.55;cursor:not-allowed}.ofr-fare{display:flex;flex-direction:column;gap:5px;margin:22px 0;padding:20px;background:#f0f5fc;border-radius:12px}.ofr-fare__amount{font-size:1.9rem}.ofr-fare__note{color:var(--ofr-muted);font-size:.82rem}.ofr-submit{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:52px;border:0;border-radius:10px;padding:14px 20px;background:var(--ofr-accent);color:#fff;font-weight:700}.ofr-submit i{font-style:normal;font-size:1.3rem}.ofr-booking__status{margin:14px 0;overflow-wrap:anywhere}.ofr-booking__fineprint{color:var(--ofr-muted);font-size:.8rem}.ofr-honeypot{position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}
@media(max-width:620px){.ofr-booking{margin:12px auto;border-radius:14px}.ofr-booking__form{padding:20px}.ofr-booking__grid{grid-template-columns:minmax(0,1fr);gap:18px}.ofr-field--wide{grid-column:auto}.ofr-booking .ofr-needs,.ofr-booking .ofr-pickup-mode{padding:14px}.ofr-booking__hero h2{font-size:2rem}.ofr-route-button{width:100%}}
.ofr-scheduled-field[hidden]{display:none!important}
.ofr-booking__hero{min-height:245px;padding:30px 34px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;background-size:cover;background-position:center 56%;color:#fff}.ofr-booking__hero .ofr-booking__eyebrow{color:#c7dcff}.ofr-booking__hero h2{max-width:440px;margin:10px 0 4px;color:#fff;font-size:clamp(2rem,5vw,2.8rem);line-height:1.05;letter-spacing:-.035em}.ofr-booking__hero p{margin:4px 0 0;color:rgba(255,255,255,.9);font-size:1.02rem}.ofr-booking__intro{padding-top:18px;padding-bottom:0;background:#fff}.ofr-booking__intro p{font-size:.92rem}@media(max-width:620px){.ofr-booking__hero{min-height:190px;padding:24px 20px;background-position:58% center}.ofr-booking__intro{padding:14px 20px 0}}
.ofr-vehicle-field{grid-column:1/-1;border:0;padding:0;margin:0;min-width:0}.ofr-vehicle-field legend{padding:0;margin-bottom:9px;font-size:.9rem;font-weight:700}.ofr-vehicle-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.ofr-vehicle-card{position:relative;display:flex;flex-direction:column;border:1px solid var(--ofr-line);border-radius:12px;overflow:hidden;cursor:pointer;transition:border-color .15s,box-shadow .15s,transform .15s}.ofr-vehicle-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(30,54,88,.1)}.ofr-vehicle-card:has(input:checked){border-color:var(--ofr-accent);box-shadow:0 0 0 2px rgba(23,105,224,.17)}.ofr-vehicle-card input{position:absolute;top:9px;left:9px;width:18px;height:18px;z-index:1;accent-color:var(--ofr-accent)}.ofr-vehicle-card__image{height:105px;background:#e8edf4;display:block}.ofr-vehicle-card__image img{width:100%;height:100%;object-fit:cover;display:block}.ofr-vehicle-card__text{padding:10px 11px;display:flex;flex-direction:column;gap:3px}.ofr-vehicle-card__text strong{font-size:.85rem;line-height:1.25}.ofr-vehicle-card__text small{font-size:.73rem;color:var(--ofr-muted)}@media(max-width:620px){.ofr-vehicle-grid{grid-template-columns:1fr 1fr}.ofr-vehicle-card__image{height:90px}}

.ofr-consent{display:flex;align-items:flex-start;gap:9px;margin:18px 0 2px;color:var(--ofr-muted);font-size:.82rem;line-height:1.5}.ofr-consent input{margin-top:3px;accent-color:var(--ofr-accent)}.ofr-consent a{color:var(--ofr-accent)}

.ofr-fare__amount.is-pending{font-size:1.1rem;font-weight:650;line-height:1.45}

/* 7.2.33: RTL form refinements; use inherited language direction. */
.ofr-booking:dir(rtl){direction:rtl;text-align:right}
.ofr-booking:dir(rtl) .ofr-booking__hero{align-items:flex-start;text-align:right}
.ofr-booking:dir(rtl) .ofr-field input[type="tel"],.ofr-booking:dir(rtl) .ofr-field input[type="email"],.ofr-booking:dir(rtl) .ofr-field input[type="number"],.ofr-booking:dir(rtl) .ofr-field input[type="date"],.ofr-booking:dir(rtl) .ofr-field input[type="time"]{direction:ltr;text-align:left}
.ofr-booking:dir(rtl) .ofr-consent{direction:rtl}
.ofr-booking:dir(rtl) .ofr-submit i{transform:scaleX(-1)}
