.booking-dialog{width:min(680px,calc(100% - 28px));max-height:90vh;max-height:90dvh;margin:auto;padding:0;border:1px solid #ffffffb3;border-radius:25px;background:#f7faff;color:#102646;box-shadow:0 28px 90px #061d4870;overscroll-behavior:contain;overflow:auto;font-size:16px}
.booking-dialog::backdrop{background:#04152c99;backdrop-filter:blur(6px)}
.booking-dialog[open]{animation:booking-in .2s ease-out}.booking-open{overflow:hidden}
@keyframes booking-in{from{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:none}}
.booking-close{position:absolute;right:16px;top:16px;z-index:2;width:44px;height:44px;padding:0;border-radius:50%;background:#ffffffed;color:#123767;font-size:29px;line-height:1;border:1px solid #ffffffa0;box-shadow:0 3px 15px #03152c20}
.booking-cover{height:162px;position:relative;overflow:hidden;background:#12386d}.booking-cover>img{width:100%;height:100%;object-fit:cover;display:block}.booking-cover:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#071c42e8,#0b326969)}
.booking-cover-copy{position:absolute;left:30px;bottom:24px;right:70px;color:white;z-index:1}.booking-kicker{display:block;font-size:11px;letter-spacing:2px;color:#d8e9ff;margin-bottom:8px}.booking-cover h2{font-size:27px;line-height:1.18;margin:0;color:white;letter-spacing:-.5px}
.booking-content>h2,.booking-loading{margin:32px}.booking-content>.button{margin:0 32px 32px}
.booking-form{padding:26px 30px!important;background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important}
.booking-form label{font-size:14px;line-height:1.45;font-weight:600;color:#284265;display:block;margin:0 0 15px}.booking-form .formgrid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.booking-form label:has(#booking-popup-picker){padding-bottom:18px;border-bottom:1px solid #dce6f2;margin-bottom:20px}
.booking-form input,.booking-form select,.booking-form textarea{width:100%;min-height:46px;padding:11px 12px;margin:7px 0 0;border:1px solid #cbd9e9;border-radius:11px;background:#fff;color:#112d53;font:400 16px/1.4 inherit;box-shadow:0 2px 5px #14355904;box-sizing:border-box}
.booking-form input:focus,.booking-form select:focus,.booking-form textarea:focus{outline:3px solid #4488db33;border-color:#377fda}.booking-form textarea{min-height:78px}.booking-form .muted,.booking-note{font-size:13px;line-height:1.6;color:#5d7088}.booking-form [role=alert]{color:#a52332;font-size:14px}.booking-submit,.booking-send{background:linear-gradient(135deg,#3076d4,#153b86)!important;border:1px solid #4f8ce0!important;color:white!important;border-radius:30px!important;min-height:48px;padding:13px 24px!important;box-shadow:inset 0 1px 0 #ffffff44,0 5px 15px #12457a22;font-weight:650}.booking-submit{width:100%;margin-top:8px}
.booking-form [hidden],.booking-review[hidden],.booking-form[hidden]{display:none!important}.booking-review{padding:28px 30px}.booking-review h2{font-size:25px;margin-top:0}.booking-summary{display:grid;grid-template-columns:minmax(100px,.8fr) minmax(120px,1fr);gap:0;margin:22px 0}.booking-summary dt,.booking-summary dd{margin:0;padding:10px 0;border-bottom:1px solid #e0e8f2;font-size:14px;overflow-wrap:anywhere}.booking-summary dt{color:#60748e;padding-right:15px}.booking-summary dd{font-weight:600}.booking-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.booking-back{background:white;color:#244a7e;border:1px solid #cbd9e9;border-radius:30px;padding:13px 22px}.booking-send{text-decoration:none;text-align:center;flex:1}
.booking-hub .intro{min-height:240px;padding:42px 0}.booking-hub .intro h1{font-size:clamp(30px,4vw,46px);margin:10px 0}.booking-hub .intro p{font-size:16px;max-width:650px}.booking-chooser{padding:28px 0 0}.booking-chooser label{font-size:15px;font-weight:600;max-width:650px;display:block}.booking-chooser select{display:block;width:100%;margin-top:10px;border:1px solid #cbd9ea;background:#f8fbff;color:#123464;border-radius:13px;padding:14px;font-size:16px}.booking-hub .section{padding-top:28px}.booking-hub .hub-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.booking-hub .service-tile{border:1px solid #dde7f3;border-radius:20px;overflow:hidden;box-shadow:0 7px 25px #173d7010}.booking-hub .service-tile>img{height:150px;object-fit:cover;width:100%}.booking-hub .service-tile .body{padding:21px}.booking-hub .service-tile h2{font-size:20px;line-height:1.3;margin:0 0 17px}.booking-hub .service-tile a{font-size:14px;padding:10px 16px;border-radius:25px}
.site-footer{background:linear-gradient(135deg,#091d3b,#102e56)!important;border-top:1px solid #244d7d;padding:50px 0 24px!important}.site-footer .footer-grid{grid-template-columns:1.4fr .7fr 1.3fr .8fr;gap:30px}.site-footer .footer-brand>a{gap:18px;align-items:center}.footer-logo-frame{width:112px;height:112px;border-radius:20px;background:#fff;display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0;box-shadow:0 7px 20px #0002}.site-footer .footer-logo-frame img{width:180px!important;max-width:none!important;height:180px!important;object-fit:contain!important;flex:none}.site-footer .footer-brand strong{font-size:23px;color:white}.site-footer .footer-brand strong span{font-size:12px;letter-spacing:1.8px;color:#c3d8f6}.site-footer h2{font-size:14px;color:#aecdf5;margin:0 0 18px}.site-footer a{color:#f0f6ff;font-size:14px}.site-footer .footer-social{display:grid;gap:10px}.site-footer .footer-social a,.site-footer a.footer-whatsapp{display:flex;align-items:center;gap:10px}.site-footer .footer-social a{width:max-content;max-width:100%;padding:8px 12px;border:1px solid #ffffff22;border-radius:12px;background:#ffffff08;margin:0}.site-footer .footer-social img,.site-footer .footer-whatsapp img{display:block!important;filter:none!important;opacity:1!important;width:28px!important;height:28px!important;max-width:none!important;object-fit:contain;flex:0 0 28px}.site-footer .footer-bottom{margin-top:30px;line-height:1.6}.site-footer .translation-note{max-width:650px}
@media(max-width:900px){.booking-hub .hub-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.site-footer .footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}}
@media(max-width:520px){.booking-dialog{width:calc(100% - 16px);max-height:94dvh;border-radius:20px}.booking-cover{height:137px}.booking-cover-copy{left:22px;bottom:20px}.booking-cover h2{font-size:24px}.booking-form,.booking-review{padding:22px!important}.booking-form .formgrid{grid-template-columns:1fr}.booking-hub .hub-grid{grid-template-columns:1fr 1fr;gap:12px}.booking-hub .service-tile .body{padding:14px}.booking-hub .service-tile h2{font-size:17px}.booking-hub .service-tile>img{height:115px}.booking-hub .service-tile a{padding:9px;font-size:13px}.footer-logo-frame{width:104px;height:104px}.site-footer .footer-brand strong{font-size:22px}.site-footer .footer-grid{gap:27px 18px}.site-footer .footer-grid>div:nth-child(3){grid-column:1/-1}.booking-actions{flex-direction:column;align-items:stretch}}
@media(prefers-reduced-motion:reduce){.booking-dialog[open]{animation:none}}

.booking-hub .hub-grid.ticket-grid{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:560px){.booking-hub .hub-grid.ticket-grid{grid-template-columns:1fr}}

.booking-cover-plain{height:auto;min-height:0;background:linear-gradient(135deg,#276bd2,#103982)}
.booking-cover-plain:after{display:none}.booking-cover-plain .booking-cover-copy{position:relative;left:0;right:0;bottom:auto;padding:26px 30px 22px}
.booking-chooser-intro{margin:22px 30px 10px;font-weight:700;color:#10233f}
.booking-chooser-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:0 30px 30px}
.booking-choice{background:#f3f7fd;color:#10336e;border:1px solid #d4e0f2;border-radius:12px;padding:14px 16px;text-align:left;font-weight:600;box-shadow:none;cursor:pointer}
.booking-choice:hover,.booking-choice:focus-visible{background:#e3edfb;border-color:#276bd2}
@media(max-width:560px){.booking-chooser-grid{grid-template-columns:1fr;padding:0 18px 22px}.booking-chooser-intro{margin:18px 18px 8px}.booking-cover-plain .booking-cover-copy{padding:22px 18px 18px}}
.guide-support .actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
/* Chooser cards: icon, service and one line; "Plan my Pokhara trip" first (owner, 2026-09-30). */
.booking-choice{display:grid;grid-template-columns:40px minmax(0,1fr);gap:12px;align-items:center;padding:12px 14px;text-decoration:none;border-radius:16px;transition:background .2s,border-color .2s,transform .15s}
.booking-choice:active{transform:scale(.98)}
.booking-choice .bc-ic{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#fff;color:#1a55b8;border:1px solid #d6e2f5}
.booking-choice .bc-ic svg{width:22px;height:22px}
.booking-choice .bc-t b{display:block;font:700 14.5px/1.25 Arial,sans-serif;color:#10336e}
.booking-choice .bc-t small{display:block;margin-top:2px;font:500 12px/1.35 Arial,sans-serif;color:#526781}
.booking-plan-card{grid-column:1/-1;background:linear-gradient(145deg,#1a55b8,#3d8cf0);border-color:transparent;box-shadow:0 14px 26px -16px #1a55b8}
.booking-plan-card:hover,.booking-plan-card:focus-visible{background:linear-gradient(145deg,#174ba3,#2f7fe6)}
.booking-plan-card .bc-ic{background:#ffffff26;border-color:#ffffff55;color:#fff}.booking-plan-card .bc-t b{color:#fff}.booking-plan-card .bc-t small{color:#dbe8ff}
/* Smart forms (owner, 2026-09-30): tap chips first, − / + for numbers, short notes. */
.bk-choice{position:relative;grid-column:1/-1;margin:0 0 16px}
.bk-h{display:block;margin:0 0 8px;font-size:14px;line-height:1.45;font-weight:600;color:#284265}
.bk-chips{display:flex;flex-wrap:wrap;gap:8px}
.bk-chip{padding:9px 13px;border-radius:18px;border:1px solid #cfe0f7;background:#fff;color:#1a55b8;font:700 13px/1.2 Arial,sans-serif;cursor:pointer;box-shadow:0 2px 6px -4px #0b2d66;transition:background .18s,color .18s,border-color .18s,transform .12s}
.bk-chip:hover{border-color:#377fda}.bk-chip:active{transform:scale(.96)}
.bk-chip.on{color:#fff;border-color:transparent;background:linear-gradient(145deg,#3d8cf0,#1a55b8);box-shadow:0 8px 16px -10px #1a55b8}
.bk-chip[hidden]{display:none!important}
.bk-src{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;margin:0!important;padding:0!important;border:0!important}
.booking-form label.bk-sub{margin:8px 0 0!important;font-size:0!important}.bk-sub input{font-size:16px}
.bk-step{display:flex;align-items:center;gap:8px;margin-top:7px}
.booking-form .bk-step input{order:2;flex:1;min-width:0;margin:0;text-align:center}
.bk-step input::-webkit-inner-spin-button,.bk-step input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.bk-step input{-moz-appearance:textfield}
.bk-m{order:1}.bk-p{order:3}
.bk-m,.bk-p{flex:none;width:46px;height:46px;padding:0;border-radius:12px;border:1px solid #cbd9e9;background:#f3f7fd;color:#1a55b8;font:700 20px/1 Arial,sans-serif;cursor:pointer;box-shadow:none}
.bk-note{grid-column:1/-1;margin:-6px 0 16px;padding:10px 12px;border-radius:12px;background:#eef4ff;border:1px solid #d6e2f5;color:#284265;font-size:13px;line-height:1.5}
.bk-plan{grid-column:1/-1;display:block;margin:0 0 18px;padding:12px 14px;border-radius:14px;background:linear-gradient(145deg,#1a55b8,#3d8cf0);color:#fff!important;font:700 14px/1.4 Arial,sans-serif;text-decoration:none}
