/* Flights + hotels booking pages – sits on top of account.css and book.css */
.fbar{max-width:none;align-items:stretch}
.fbar .fld{flex:1 1 200px}
.fbar .fdate{flex:0 1 170px}
.fbar .fpax{flex:0 1 230px;position:relative}
.ttype{flex:1 0 100%;display:flex;gap:8px;padding:2px 4px 0}
.ttype label{cursor:pointer}
.ttype input{position:absolute;opacity:0;pointer-events:none}
.ttype span{display:inline-block;padding:6px 14px;border-radius:999px;background:var(--mist);font-size:13.5px;font-weight:700;color:var(--muted)}
.ttype input:checked+span{background:var(--info-bg);color:var(--navy)}
.ttype input:focus-visible+span{outline:2px solid var(--sky-deep);outline-offset:2px}
.swap{flex:0 0 40px;align-self:center;height:40px;border-radius:50%;border:1px solid var(--line);background:#fff;color:var(--sky-deep);font-size:18px;font-weight:800;cursor:pointer;margin:0 -6px}
.paxbtn{border:0;background:none;font:inherit;font-size:16px;font-weight:600;color:var(--navy);text-align:left;padding:2px 0;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.paxpop{position:absolute;right:0;top:calc(100% + 8px);width:320px;max-width:calc(100vw - 40px);background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 24px 50px -24px rgba(11,31,58,.4);padding:14px 16px;z-index:40;text-transform:none;letter-spacing:0}
.paxpop .prow{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid var(--line)}
.paxpop .prow b{display:block;color:var(--navy);font-size:15px}
.paxpop .prow small{color:var(--muted);font-size:12.5px;font-weight:500;letter-spacing:0;text-transform:none}
.paxpop .prow.sub{padding-left:10px}
.step{display:flex;align-items:center;gap:6px}
.step button{width:34px;height:34px;border-radius:12px;border:0;background:var(--info-bg);color:var(--sky-deep);font-size:18px;font-weight:700;cursor:pointer}
.step output{min-width:24px;text-align:center;font-weight:700;color:var(--navy)}
.bar .paxpop select.input{border:1px solid var(--line);background:#fff;border-radius:10px;padding:8px 10px;font-size:15px}
.sm-in{width:auto;padding:6px 10px;min-height:0}
.loading{text-align:center;padding:40px 0}
.sortchips{display:flex;gap:8px;flex-wrap:wrap}
.chip-s{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 14px;font-weight:700;font-size:13.5px;color:var(--ink);cursor:pointer}
.chip-s.on{background:var(--navy);border-color:var(--navy);color:#fff}
.chips2{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}
.offers{display:grid;gap:14px}
.ocard{display:grid;grid-template-columns:200px 1fr 260px;gap:18px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:20px;padding:16px 20px;text-align:left;font:inherit;cursor:pointer;transition:transform .15s,box-shadow .15s,border-color .15s}
.ocard:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:#CFE3F5}
.otop{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.aname{font-weight:700;color:var(--navy)}
.alogo{display:inline-flex;align-items:center;justify-content:center;border-radius:10px;background:var(--mist);overflow:hidden;font-size:12px;font-weight:700;color:var(--muted);flex-shrink:0}
.alogo img{width:80%;height:80%;object-fit:contain}
.oslices{display:grid;gap:8px}
.slice .slabel{font-size:10.5px;font-weight:700;letter-spacing:.1em;color:var(--muted)}
.srow{display:flex;align-items:center;justify-content:space-between;gap:12px}
.srow .tm{font-size:21px;font-weight:800;color:var(--navy);line-height:1.1}
.srow .tm sup{font-size:11px;color:var(--warn);margin-left:2px}
.srow .cd{font-size:13px;color:var(--muted);font-weight:600}
.srow .mid{flex:1;text-align:center;min-width:80px}
.srow .dur,.srow .stp{font-size:12.5px;color:var(--muted)}
.srow .stp{color:var(--warn);font-weight:600}
.srow .stp.dir{color:var(--ok)}
.ln{display:flex;align-items:center;margin:4px 0}
.ln i{width:7px;height:7px;border-radius:50%;background:var(--navy);flex-shrink:0}
.ln i.st{background:var(--warn)}
.ln b{flex:1;height:1.5px;background:#C9D5E1}
.ofoot{display:grid;grid-template-columns:1fr auto;gap:6px 12px;align-items:end;border-left:1px solid var(--line);padding-left:18px}
.ofoot>.muted{grid-column:1/-1}
.oprice{display:block;font-size:26px;font-weight:800;color:var(--navy);line-height:1.1}
.ofoot small{display:block}
.leg2{border-top:1px solid var(--line);margin-top:10px}
.dob{display:grid;grid-template-columns:1fr 1fr 1.4fr;gap:8px;max-width:300px}
.dob .input{text-align:center}
fieldset.panel{border:1px solid var(--line);min-width:0}
fieldset.panel .two,fieldset.panel .field{margin-bottom:10px}
.refbox{display:inline-block;margin-top:12px;background:var(--mist);border-radius:16px;padding:12px 26px}
.refbox small{display:block;font-size:11px;font-weight:700;letter-spacing:.1em;color:var(--muted)}
.refbox b{font-size:30px;letter-spacing:.12em;color:var(--navy)}
/* hotels */
.hcard{display:grid;grid-template-columns:260px 1fr 220px;background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;text-align:left;font:inherit;cursor:pointer;padding:0;transition:transform .15s,box-shadow .15s}
.hcard:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.hcard .ph{background:linear-gradient(135deg,#0B1F3A,#1E6FD9);min-height:180px}
.hcard .ph img{width:100%;height:100%;object-fit:cover;display:block}
.hcard .bd{padding:16px 18px;display:grid;gap:4px;align-content:start}
.hcard .pr{padding:16px 18px;border-left:1px solid var(--line);display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-end;gap:2px;text-align:right}
.stars{color:#E0A100;letter-spacing:1px;font-size:14px}
.rate{border:1.5px solid var(--line);border-radius:16px;padding:14px 16px;display:grid;grid-template-columns:1fr auto;gap:6px 14px;align-items:center}
.rate.on{border-color:var(--sky-deep);box-shadow:0 0 0 3px rgba(30,111,217,.15)}
.rate b{color:var(--navy)}
@media (max-width:1100px){.ocard{grid-template-columns:1fr}.ofoot{border-left:0;padding-left:0;border-top:1px solid var(--line);padding-top:10px;grid-template-columns:1fr auto auto}.ofoot>.muted{grid-column:auto}}
@media (max-width:860px){.hcard{grid-template-columns:1fr}.hcard .ph{height:180px}.hcard .pr{border-left:0;border-top:1px solid var(--line);flex-direction:row;justify-content:space-between;align-items:center}}
@media (max-width:560px){.fbar .fdate,.fbar .fpax{flex:1 1 140px}.swap{display:none}.ofoot{grid-template-columns:1fr auto}.ofoot .btn{grid-column:1/-1}.srow .tm{font-size:18px}.paxpop{left:0;right:auto}}
.bk-hero{overflow:visible}
.bk-hero img.bg{clip-path:inset(0)}
#pf .two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
#pf .field{display:grid;gap:6px}
@media (max-width:560px){#pf .two{grid-template-columns:1fr}}
