/* BOOK A TRIP POPUP */
.overlay{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(10,12,40,.65);backdrop-filter:blur(8px);opacity:0;visibility:hidden;transition:.35s}
.overlay.open{opacity:1;visibility:visible}
.modal{width:min(440px,100%);background:var(--surface);border-radius:28px;overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,.5);transform:translateY(60px) scale(.85);transition:transform .55s cubic-bezier(.2,1.3,.4,1)}
.overlay.open .modal{transform:none}
.stage{position:relative;height:190px;background:linear-gradient(180deg,#1a237e,#5c6bc0 60%,#ffb074);overflow:hidden}
.close{position:absolute;top:12px;right:12px;z-index:3;width:34px;height:34px;border:0;border-radius:50%;background:rgba(255,255,255,.25);color:#fff;font-size:20px;cursor:pointer;line-height:1}
.cloud{position:absolute;width:70px;height:22px;background:rgba(255,255,255,.7);border-radius:99px;animation:cloud 8s linear infinite}
.cloud:nth-child(2){top:30px;animation-duration:11s;animation-delay:-3s;transform:scale(.7)}.cloud:nth-child(3){top:120px;animation-duration:9s;animation-delay:-6s}
@keyframes cloud{from{left:110%}to{left:-30%}}
.path{position:absolute;inset:0;width:100%;height:100%}
.path path{stroke:#fff;stroke-width:2;fill:none;stroke-dasharray:6 8;animation:dash 1.2s linear infinite}
@keyframes dash{to{stroke-dashoffset:-14}}
.plane{position:absolute;top:0;left:0;font-size:0;offset-path:path('M20 150 Q 140 10 240 90 T 420 40');offset-rotate:auto;animation:go 4.5s ease-in-out infinite}
@keyframes go{from{offset-distance:0%}to{offset-distance:100%}}
.pin{position:absolute;right:16%;top:28%;width:14px;height:14px;border-radius:50%;background:#ff5722;box-shadow:0 0 0 0 rgba(255,87,34,.7);animation:pulse 1.8s infinite}
@keyframes pulse{to{box-shadow:0 0 0 24px rgba(255,87,34,0)}}
.mbody{padding:26px 28px 30px;text-align:center}
.mbody>*{opacity:0;transform:translateY(16px)}
.overlay.open .mbody>*{animation:up .6s forwards}
.overlay.open .mbody>*:nth-child(2){animation-delay:.12s}.overlay.open .mbody>*:nth-child(3){animation-delay:.24s}.overlay.open .mbody>*:nth-child(4){animation-delay:.36s}.overlay.open .mbody>*:nth-child(5){animation-delay:.48s}
@keyframes up{to{opacity:1;transform:none}}
.mbody h3{font-size:1.5rem;color:var(--primary);font-weight:800}
.mbody p{color:var(--muted);font-size:.92rem;margin:4px 0 16px}
.sel{display:inline-block;background:rgba(255,87,34,.12);color:var(--accent);padding:3px 14px;border-radius:99px;font-size:.8rem;font-weight:700;margin-bottom:18px}
.opt{display:flex;align-items:center;gap:14px;width:100%;padding:14px 18px;margin-bottom:12px;border-radius:16px;color:#fff;text-decoration:none;font-weight:600;text-align:left;transition:transform .25s,box-shadow .25s}
.opt:hover{transform:translateY(-3px) scale(1.02)}
.opt svg{width:28px;height:28px;flex:none}.opt small{display:block;font-weight:400;opacity:.85;font-size:.76rem}
.wa{background:linear-gradient(135deg,#25d366,#128c7e);box-shadow:0 10px 22px rgba(37,211,102,.35)}
.em{background:linear-gradient(135deg,#ff5722,#e64a19);box-shadow:0 10px 22px rgba(255,87,34,.35)}
.plogo{position:absolute;top:14px;left:18px;height:28px;width:auto;z-index:3}
