/* Diyanat Travels — Taxi & Transfers booking page (uses the site.css colours) */
.tx-hp{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden;clip-path:inset(50%);opacity:0;pointer-events:none}   /* anti-spam field: clipped, not moved off-screen (that widens RTL pages) */

/* hero: short, so the form starts on the first screen */
.tx-hero2{position:relative;overflow:hidden;background:#141a4a;color:#fff;padding:2.4rem 0 6.5rem}
.tx-hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:62% 55%}
.tx-hero2::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(20,26,74,.94) 0%,rgba(20,26,74,.82) 45%,rgba(20,26,74,.35) 100%)}
[dir=rtl] .tx-hero2::before{background:linear-gradient(270deg,rgba(20,26,74,.94) 0%,rgba(20,26,74,.82) 45%,rgba(20,26,74,.35) 100%)}
[dir=rtl] .tx-hero-img{transform:scaleX(-1)}
.tx-hero2-in{position:relative;z-index:2;max-width:1200px}
.tx-hero2 .breadcrumb{color:#c9d3f5}.tx-hero2 .breadcrumb a{color:#fff}
.tx-hero2 .eyebrow{display:inline-flex;align-items:center;gap:.4rem}
.tx-hero2 h1{color:#fff;font-size:clamp(1.8rem,3.4vw,2.7rem);line-height:1.15;max-width:15em;margin:.5rem 0 .6rem}
.tx-hero2 .lead{color:#dde4ff;max-width:36em;font-size:1rem}
.tx-ticks{list-style:none;margin:1rem 0 0;padding:0;display:flex;flex-wrap:wrap;gap:.4rem 1.2rem;color:#e6ecff;font-size:.9rem}
.tx-ticks li{font-weight:500}

/* booking: form + summary */
.tx-book{position:relative;z-index:3;margin-top:-4.6rem;padding-bottom:3rem}
.tx-book-in{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:1.4rem;align-items:start}
.tx-form,.tx-done{background:#fff;color:var(--ink);border-radius:20px;box-shadow:0 8px 24px rgba(43,54,145,.08);padding:1.4rem 1.5rem 1.2rem;border:1px solid #E8EAF4}
.tx-fh{display:flex;justify-content:space-between;align-items:baseline;gap:.6rem;flex-wrap:wrap;margin-bottom:.4rem}
.tx-fh h2{font-size:1.3rem;color:var(--navy);margin:0}
.tx-now{font-size:.76rem;font-weight:600;color:#B4520A;background:#fff3e4;border-radius:8px;padding:.15rem .5rem}
.tx-sec{border:0;margin:0;padding:1.1rem 0 .3rem;border-top:1px solid #eef0f7;min-width:0}
.tx-sec:first-of-type{border-top:0}
.tx-sec>legend{display:flex;align-items:center;gap:.55rem;padding:0;margin-bottom:.75rem;font-weight:700;font-size:1rem;color:var(--ink)}
.tx-sec>legend>span{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:#fff;font-size:.8rem;flex:none}
.tx-types{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.25rem;background:#f4f5fc;padding:.25rem;border-radius:12px;margin-bottom:.8rem}
.tx-types label{position:relative;text-align:center;border-radius:9px;padding:.55rem .4rem;font-size:.88rem;font-weight:600;cursor:pointer;color:var(--muted);transition:background-color .15s,color .15s,box-shadow .15s}
.tx-types input{position:absolute;inset:0;opacity:0;margin:0;cursor:pointer}
.tx-types label:has(input:checked){background:#fff;color:var(--navy);box-shadow:0 2px 8px rgba(27,34,98,.14)}
.tx-types label:has(input:focus-visible){outline:2px solid var(--navy);outline-offset:1px}
.tx-leg{border:1px solid #E8EAF4;border-radius:14px;padding:.6rem .8rem .7rem;margin:0 0 .7rem;background:#fafbff;min-width:0}
.tx-leg legend{font-weight:700;font-size:.82rem;color:var(--navy);padding:0 .3rem;display:flex;gap:.5rem;align-items:center}
.tx-x{border:0;background:none;color:#b42318;font-size:.78rem;font-weight:600;cursor:pointer;text-decoration:underline}
.tx-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.6rem .7rem;margin-bottom:.5rem}
.tx-grid .s2{grid-column:span 2}.tx-grid .s3{grid-column:span 3}.tx-grid .s4{grid-column:1/-1}
.tx-form label{display:block;font-size:.78rem;font-weight:600;color:var(--muted)}
.tx-form label>b{color:#b42318}   /* the required-field star only, not bold text inside vehicle cards */
.tx-form input,.tx-form select,.tx-form textarea{width:100%;margin-top:.25rem;border:1px solid #cfd8ea;border-radius:10px;padding:.6rem .65rem;font:inherit;font-size:16px;color:var(--ink);background:#fff;min-height:44px}
.tx-form textarea{resize:vertical;min-height:56px}
.tx-form input:focus,.tx-form select:focus,.tx-form textarea:focus{outline:2px solid var(--navy);outline-offset:1px;border-color:var(--navy)}
.tx-phone{display:flex;gap:.35rem}.tx-phone select{width:104px;flex:0 0 104px}
[dir=rtl] .tx-phone{direction:ltr}
.tx-pk{display:block;font-size:.72rem;color:var(--muted);font-weight:500;margin-top:.15rem;min-height:1em}
.tx-bad{border-color:#b42318!important;background:#fff7f6!important}
.tx-err{display:block;color:#b42318;font-size:.75rem;font-weight:600;margin-top:.2rem}
.tx-legprice{font-size:.85rem;color:var(--muted)}.tx-legprice b{color:#0f7a4a}.tx-rq{color:#B4520A;font-weight:600}
.tx-add{border:1px dashed var(--navy);background:#fff;color:var(--navy);border-radius:10px;padding:.5rem .85rem;font:inherit;font-size:.85rem;font-weight:600;cursor:pointer;margin:0 0 .7rem}

/* passengers & bags: steppers */
.tx-cnts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.6rem}
.tx-cnt{border:1px solid #E8EAF4;border-radius:12px;padding:.55rem .6rem .6rem;background:#fff}
.tx-cnt>label{margin-bottom:.35rem;color:var(--ink);font-size:.82rem}.tx-cnt>label small{display:block;font-weight:500;color:var(--muted);font-size:.72rem}
.tx-step{display:flex;align-items:center;gap:.3rem}
.tx-step button{flex:none;width:36px;height:36px;border-radius:50%;border:1.5px solid #d9deef;background:#fff;color:var(--navy);font-size:1.15rem;line-height:1;cursor:pointer}
.tx-step button:hover{border-color:var(--navy)}
.tx-form .tx-step input{margin:0;min-height:36px;padding:.3rem .2rem;text-align:center;font-weight:700;border-color:transparent;background:transparent;-moz-appearance:textfield}
.tx-step input::-webkit-outer-spin-button,.tx-step input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}

/* vehicle cards (radio) */
.tx-hint{font-size:.84rem;color:var(--muted);margin:0 0 .6rem;display:flex;gap:.35rem;align-items:center}
.tx-vcards{display:grid;grid-template-columns:repeat(auto-fill,minmax(138px,1fr));gap:.6rem;border-radius:14px}
.tx-vcards.tx-bad{outline:2px solid #b42318;outline-offset:3px;background:none!important}
.tx-vc{position:relative;display:flex;flex-direction:column;border:1.5px solid #e2e6f3;border-radius:14px;padding:.6rem .7rem .7rem;cursor:pointer;background:#fff;transition:border-color .15s,box-shadow .15s,background-color .15s}
.tx-form .tx-vc{color:var(--ink);font-weight:400}
.tx-vc:hover{border-color:#c6cdea}
.tx-vc.on,.tx-vc:has(input:checked){border-color:var(--orange);background:#fffaf4;box-shadow:0 0 0 3px rgba(247,134,26,.12)}
.tx-vc:has(input:focus-visible){outline:2px solid var(--navy);outline-offset:2px}
.tx-vc input{position:absolute;top:.6rem;inset-inline-end:.6rem;width:18px;height:18px;margin:0;min-height:0;accent-color:#E06A0C}
.tx-vc-img{display:flex;align-items:flex-end;justify-content:center;height:62px;margin-bottom:.45rem}
.tx-vc-img img{width:100%;max-width:150px;height:100%;object-fit:contain;object-position:center bottom}
.tx-vc-img .tx-vc-photo{max-width:none;object-fit:cover;border-radius:9px}
.tx-vc-img .tx-vc-fleet{max-width:none;object-fit:contain;filter:drop-shadow(0 6px 6px rgba(27,34,98,.12))}
.tx-vcards:has(.tx-vc-fleet) .tx-vc-img{height:82px}
.tx-illus-note{font-size:.74rem;line-height:1.6;color:var(--muted);margin:.55rem 0 .7rem}
[lang=ur] .tx-illus-note{line-height:2.3}.tx-illus-note a{color:var(--navy);font-weight:600}
.tx-credits{margin:1.4rem auto 0;max-width:760px;font-size:.78rem;color:var(--muted)}
.tx-credits>summary{cursor:pointer;text-align:center;font-weight:600;color:var(--navy)}
.tx-credits ul{margin:.6rem 0 .4rem;padding-inline-start:1.1rem;line-height:1.6}.tx-credits a{color:var(--navy)}.tx-credits p{margin:0}
.tx-vc-t{display:flex;flex-direction:column;gap:.1rem;flex:1}
.tx-vc-t b{font-size:.95rem;color:var(--navy)}
.tx-vc-t small{font-size:.74rem;color:var(--muted)}
.tx-vc-cap{display:flex;flex-wrap:wrap;gap:.1rem .6rem;font-size:.74rem;font-weight:600;color:var(--ink);margin-top:.25rem}
.tx-vc-cap>span{display:inline-flex;align-items:center;gap:.25rem;white-space:nowrap}
.tx-vc-n{font-style:normal;font-size:.72rem;font-weight:600;color:#B4520A}
.tx-vc-p{display:flex;flex-direction:column;margin-top:.45rem;padding-top:.45rem;border-top:1px dashed #e6e9f4;min-height:1.6rem;font-size:.82rem}
.tx-vc-p:empty{display:none}
.tx-vc-p b{font-size:1.02rem;color:#0f7a4a;font-variant-numeric:tabular-nums}.tx-vc-p small{font-size:.7rem;color:#B4520A;font-weight:600}
.tx-vc-load{display:block;height:1rem;width:60%;border-radius:6px;background:linear-gradient(90deg,#eef0f7 25%,#f7f8fc 50%,#eef0f7 75%);background-size:200% 100%;animation:txShim 1.1s linear infinite}
@keyframes txShim{to{background-position:-200% 0}}

/* your details */
.tx-more{margin-top:.2rem;border-radius:12px}
.tx-more>summary{cursor:pointer;font-size:.86rem;font-weight:600;color:var(--navy);padding:.35rem 0;list-style:none;display:inline-flex;align-items:center;gap:.35rem}
.tx-more>summary::-webkit-details-marker{display:none}
.tx-more>summary::before{content:"+";display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;border:1.5px solid currentColor;font-size:.85rem;line-height:1}
.tx-more[open]>summary::before{content:"−"}
.tx-more>.tx-grid{margin-top:.5rem}
.tx-msg{border-radius:10px;padding:.55rem .7rem;margin:.6rem 0;font-size:.86rem;background:#eef3ff;color:var(--navy)}.tx-msg.err{background:#fdecea;color:#8f1d14}
.tx-alt{margin:.7rem 0 0}
.tx-link{border:0;background:none;padding:0;font:inherit;font-size:.84rem;font-weight:600;color:var(--navy);text-decoration:underline;cursor:pointer}
.tx-link:disabled{opacity:.6;cursor:wait}
.tx-fine{font-size:.76rem;color:var(--muted);margin:.5rem 0 0;line-height:1.5}

/* summary column */
.tx-sum{position:sticky;top:92px}
.tx-sum-in{background:#fff;border:1px solid #E8EAF4;border-radius:20px;box-shadow:0 8px 24px rgba(43,54,145,.08);padding:1.2rem;display:flex;flex-direction:column;gap:.9rem}
.tx-sum-h{font:700 1.05rem/1.2 'Playfair Display',Georgia,serif;color:var(--ink)}
[lang=ar] .tx-sum-h,[lang=ur] .tx-sum-h{font-family:inherit}
.tx-sl dl{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.55rem .8rem;margin:0;font-size:.86rem;line-height:1.4}
.tx-sl dt{color:var(--muted);font-size:.78rem}
.tx-sl dd{margin:0;font-weight:600;color:var(--ink);overflow-wrap:anywhere}
.tx-sum-legs{list-style:none;margin:0;padding:0;display:grid;gap:.4rem}
.tx-sum-legs small{display:block;font-weight:500;color:var(--muted);font-size:.75rem}
.tx-tot{padding-top:.85rem;border-top:1px dashed #cfd5ea}
.tx-tot span{display:block;font-size:.78rem;font-weight:600;color:var(--muted)}
.tx-tot b{display:block;font-size:1.5rem;line-height:1.2;color:var(--navy);font-variant-numeric:tabular-nums;white-space:nowrap}
.tx-tot small{display:block;font-size:.75rem;color:var(--muted);margin-top:.15rem}
.tx-wa{display:flex;width:100%;justify-content:center;align-items:center;gap:.45rem;border:0;border-radius:999px;padding:.85rem 1rem;font:inherit;font-weight:700;font-size:.95rem;cursor:pointer;background:#128C4A;color:#fff}
.tx-wa:hover{background:#0d6e3a}.tx-wa:disabled{opacity:.6;cursor:wait}
.tx-wa svg{width:20px;height:20px;fill:currentColor;flex:none}
.tx-lic{display:flex;align-items:center;gap:.35rem;margin:0;font-size:.74rem;color:var(--muted)}

/* after sending */
.tx-done{text-align:center}.tx-ok{width:54px;height:54px;border-radius:50%;background:#e3f6ec;color:#0f7a4a;font-size:28px;display:grid;place-items:center;margin:.3rem auto .6rem}
.tx-done h3{color:var(--navy);font-size:1.25rem;margin-bottom:.3rem}.tx-refl{font-size:1.05rem;margin:.3rem 0}.tx-refl b{color:#B4520A;letter-spacing:.04em}
.tx-actions{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.8rem}
.tx-actions .btn{flex:1;min-width:200px;justify-content:center;border:0;cursor:pointer;font:inherit;font-weight:600}
.btn-wa{background:#128c4a;color:#fff}.btn-wa:hover{background:#0d6e3a;color:#fff}
.btn-ghost-d{background:#fff;color:var(--navy);border:1px solid var(--line)!important}
.tx-pre{white-space:pre-wrap;text-align:start;background:#f6f8fc;border-radius:10px;padding:.6rem .7rem;font:inherit;font-size:.82rem;margin:.6rem 0;max-height:220px;overflow:auto}

/* popular routes + schematic map */
.tx-rt-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:1.4rem;align-items:center}
.tx-map{margin:0;background:#F7F8FC;border:1px solid #E8EAF4;border-radius:20px;padding:.8rem .8rem .6rem}
.tx-map svg{display:block;width:100%;height:auto}
.tx-map figcaption{font-size:.74rem;color:var(--muted);text-align:center;margin-top:.2rem}
.tx-routes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}
.tx-route{display:flex;align-items:center;gap:.7rem;background:#fff;border:1px solid #E8EAF4;border-radius:14px;padding:.75rem .85rem;text-align:start;cursor:pointer;font:inherit;color:var(--ink);box-shadow:0 8px 24px rgba(43,54,145,.06);transition:transform .18s cubic-bezier(.165,.84,.44,1),border-color .18s}
.tx-route:hover{transform:translateY(-2px);border-color:var(--orange)}
.tx-r-ic{font-size:1.3rem;color:var(--navy)}.tx-r-t{flex:1;display:flex;flex-direction:column;min-width:0}.tx-r-t b{font-size:.88rem;line-height:1.35}.tx-r-t small{color:var(--muted);font-size:.74rem}
.tx-r-p{text-align:end;font-weight:700;color:#0f7a4a;font-size:.88rem;white-space:nowrap}.tx-r-p small{display:block;font-weight:600;color:var(--muted);font-size:.7rem}
.tx-note,.tx-empty{grid-column:1/-1;text-align:center;color:var(--muted);font-size:.8rem;margin:.2rem 0 0}

/* how it works */
.tx-steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
.tx-steps li{background:#fff;border:1px solid #E8EAF4;border-radius:16px;padding:1.1rem}
.tx-steps span{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--orange);color:#1c1300;font-weight:700;margin-bottom:.5rem}
.tx-steps h3{color:var(--navy);font-size:1rem;margin-bottom:.25rem}.tx-steps p{font-size:.88rem;color:var(--muted)}
.tx-learn{text-align:center;margin:1.6rem 0 0}
.tx-learn a{display:inline-flex;align-items:center;gap:.35rem;font-weight:600;color:var(--navy)}

/* Urdu: Nastaliq needs room */
[lang=ur] .tx-form,[lang=ur] .tx-done,[lang=ur] .tx-route,[lang=ur] .tx-steps,[lang=ur] .tx-ticks,[lang=ur] .tx-hero2,[lang=ur] .tx-sum,[lang=ur] .tx-map{font-family:'Noto Nastaliq Urdu','Poppins','Poppins Fallback',system-ui,sans-serif}
[lang=ur] .tx-form label,[lang=ur] .tx-steps p,[lang=ur] .tx-fine,[lang=ur] .tx-sl dl,[lang=ur] .tx-vc-t small{line-height:2}
[lang=ur] .tx-form input,[lang=ur] .tx-form select,[lang=ur] .tx-tot b,[lang=ur] .tx-vc-p b{font-family:'Poppins','Poppins Fallback',system-ui,sans-serif}
[lang=ur] h1,[lang=ur] h2,[lang=ur] .sec-head h2{line-height:1.9}
[lang=ur] .lead{line-height:2.1}

@media (max-width:1100px){.tx-rt-grid{grid-template-columns:1fr}.tx-map{max-width:640px;margin:0 auto}}
/* below 1024px: one column; the summary becomes a bar at the bottom while the form is on screen (it replaces the site's phone bar there) */
@media (max-width:1023px){
  .tx-book-in{grid-template-columns:1fr}
  .tx-sum{position:fixed;inset:auto 0 0 0;top:auto;z-index:95;transform:translateY(110%);transition:transform .2s cubic-bezier(.165,.84,.44,1)}
  html.tx-in .tx-sum{transform:none}
  html.tx-in .dh-mbar{transform:translateY(110%);transition:transform .2s}
  .tx-sum-in{flex-direction:row;align-items:center;gap:.7rem;border-radius:0;border:0;border-top:1px solid #E8EAF4;box-shadow:0 -10px 26px rgba(27,34,98,.12);padding:.65rem 1rem calc(.65rem + env(safe-area-inset-bottom))}
  .tx-sum-h,.tx-sl,.tx-lic{display:none}
  .tx-tot{flex:1;min-width:0;border:0;padding:0}
  .tx-tot span{font-size:.7rem}.tx-tot b{font-size:1.15rem}
  .tx-tot small{display:none}.tx-tot small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.7rem}
  .tx-wa{width:auto;flex:none;padding:.75rem 1rem;font-size:.9rem}
  .tx-book{padding-bottom:5.5rem}
  .tx-steps{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:640px){
  .tx-hero2{padding:1.6rem 0 5.6rem}
  .tx-hero2::before{background:linear-gradient(180deg,rgba(20,26,74,.86),rgba(20,26,74,.92))}
  .tx-ticks{font-size:.82rem;gap:.3rem .9rem}
  .tx-form{padding:1.1rem .9rem 1rem;border-radius:16px}
  .tx-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tx-grid .s3{grid-column:1/-1}
  .tx-cnts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tx-vcards{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tx-routes{grid-template-columns:1fr}
  .tx-steps{grid-template-columns:1fr}
  .tx-actions .btn{min-width:100%}
}
@media (prefers-reduced-motion:reduce){.tx-route,.tx-vc,.tx-types label,.tx-sum,.dh-mbar{transition:none}.tx-route:hover{transform:none}.tx-vc-load{animation:none}}
