.booking-modal-open{overflow:hidden}
.tour-dialog{border:0;padding:0;margin:auto;width:min(820px,calc(100vw - 40px));max-height:calc(100dvh - 52px);border-radius:20px;background:#fff;color:#17221d;box-shadow:0 30px 100px #17221d40;font-family:Inter,"Plus Jakarta Sans",Arial,sans-serif;overflow:auto;overscroll-behavior:contain}
.tour-dialog::backdrop{background:#10291f9c;backdrop-filter:blur(5px)}
.tour-dialog *{box-sizing:border-box}.tour-dialog button,.tour-dialog input,.tour-dialog select,.tour-dialog textarea{font:inherit}.tour-dialog button,.tour-dialog a,.tour-dialog input,.tour-dialog select,.tour-dialog textarea{outline-offset:4px}.tour-dialog button:focus-visible,.tour-dialog a:focus-visible{outline:3px solid #e85e0d}.tour-dialog-shell{position:relative}.tour-close{position:absolute;right:18px;top:18px;z-index:3;background:#fff;border:0;width:38px;height:38px;border-radius:50%;font-size:28px!important;line-height:1;cursor:pointer;box-shadow:0 2px 12px #0002;color:#26382d}.tour-close:hover{background:#fff2e8}.tour-visual{height:238px;background:linear-gradient(135deg,#315f50,#759886);position:relative;overflow:hidden}.tour-visual:after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,#0b23179c)}.tour-visual img{width:100%;height:100%;object-fit:cover}.tour-photo-label{position:absolute;left:32px;bottom:23px;z-index:1;color:white;letter-spacing:2.5px;font-size:10px;font-weight:700}.tour-content{padding:30px 36px 14px}.tour-eyebrow{color:#c95b15;letter-spacing:2px;font-weight:750;font-size:10px;line-height:1.6;text-transform:uppercase;margin:0 0 9px}.tour-heading{font-size:29px;letter-spacing:-1.1px;line-height:1.22;margin:0 0 12px;font-weight:750;padding-right:12px;color:#18392b}.tour-countries{font-size:13px;line-height:1.7;color:#718078;margin:0}.tour-tabs{display:flex;gap:25px;border-bottom:1px solid #e8ece9;margin-top:23px}.tour-tab{padding:14px 0;border:0;background:none;border-bottom:2px solid transparent;margin-bottom:-1px;cursor:pointer;font-size:12px!important;font-weight:650!important;color:#7b827e}.tour-tab[aria-selected=true]{border-bottom-color:#f47920;color:#d56415}.tour-tab-panel{padding:23px 0 8px;min-height:180px}.tour-tab-panel h3{font-size:14px;line-height:1.5;margin:18px 0 13px}.tour-description{font-size:13px;line-height:1.8;color:#65736b;margin:0 0 16px}.tour-facts{display:grid;grid-template-columns:1fr 1fr;gap:19px 24px;margin:20px 0}.tour-facts dt{font-size:10px;text-transform:uppercase;letter-spacing:.9px;color:#87938c;margin-bottom:6px}.tour-facts dd{font-size:12px;line-height:1.6;font-weight:600;margin:0;overflow-wrap:anywhere}.tour-bullets{padding-left:19px;color:#5c6c62;font-size:12px;line-height:1.8;display:grid;gap:7px}.tour-bullets li::marker{color:#f47920}.tour-route{list-style:none;margin:0;padding:0 0 0 7px;counter-reset:route}.tour-route li{position:relative;padding:0 0 20px 26px;border-left:1px dashed #d5ded8;font-size:13px;line-height:1.5;color:#4e6256}.tour-route li:last-child{border:0;padding-bottom:0}.tour-route li:before{content:"";position:absolute;left:-5px;top:5px;width:9px;height:9px;border-radius:50%;background:#f47920;border:2px solid #fff;box-shadow:0 0 0 1px #f47920}.tour-fineprint{font-size:11px;line-height:1.8;color:#8a948e;margin-top:21px}.tour-tab-price{font-size:25px;letter-spacing:-.7px;font-weight:750;color:#173e2c;margin:6px 0 17px}.tour-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #edf0ed;padding:23px 36px 8px}.tour-price-caption{display:block;font-size:10px;color:#8b968f;margin-bottom:4px}.tour-price{font-size:27px;letter-spacing:-1px;color:#234834}.tour-price-unit{font-size:10px;color:#8c978f;margin-left:7px}.tour-service-note{font-size:10px;line-height:1.6;color:#8c978f;text-align:right;margin:8px 36px 22px}.booking-button{border:0;border-radius:8px;padding:14px 21px;font-size:12px!important;line-height:1.35;font-weight:650!important;cursor:pointer;transition:background .15s,transform .15s;text-decoration:none}.booking-button:hover{transform:translateY(-1px)}.booking-primary{background:#f47920;color:#fff;box-shadow:0 4px 10px #f4792020}.booking-primary:hover{background:#e96912}.booking-secondary{background:#f2f5f1;color:#385341;border:1px solid #e3e9e2}.booking-secondary:hover{background:#e8eee7}.booking-danger{background:#b73f31;color:#fff}.booking-danger:hover{background:#9b3025}.booking-content{padding:44px 40px 35px}.booking-back{font-size:11px!important;color:#75837a;cursor:pointer;background:none;border:0;padding:0;margin:0 0 27px}.booking-back:hover{color:#d56415}.booking-product-name{font-size:13px;line-height:1.6;color:#6e7d73;margin:0 0 22px}.booking-demo{font-size:11px;line-height:1.7;background:#fff8ed;border:1px solid #f6e7cd;color:#a17739;padding:12px 15px;border-radius:8px;margin:20px 0 25px}.booking-form{margin-top:22px}.booking-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.booking-field{display:flex;flex-direction:column;gap:8px;min-width:0}.booking-field label{font-size:11px;font-weight:650;color:#53695a;line-height:1.5}.booking-field input,.booking-field select,.booking-field textarea{border:1px solid #dce4dd;background:#fff;border-radius:7px;padding:12px 13px;min-height:44px;width:100%;font-size:12px;color:#213d2b}.booking-field input:focus,.booking-field select:focus,.booking-field textarea:focus{outline:2px solid #f479204d;border-color:#f47920}.booking-field input::placeholder,.booking-field textarea::placeholder{color:#a6afa8}.booking-field textarea{resize:vertical;line-height:1.6}.booking-form>.booking-field{margin-top:20px}.booking-ack{display:flex;align-items:flex-start;gap:10px;margin:22px 0;font-size:11px;line-height:1.7;color:#748175;cursor:pointer}.booking-ack input{accent-color:#f47920;width:16px;height:16px;flex-shrink:0;margin-top:2px}.booking-form>.booking-primary{width:100%}.booking-privacy{font-size:10px;line-height:1.8;color:#909b92;text-align:center;margin:14px 0 0}.booking-error{font-size:12px;line-height:1.7;color:#ac3b2d;margin:10px 0}.booking-error:empty{display:none}.booking-success-mark{height:52px;width:52px;display:grid;place-items:center;border-radius:50%;background:#eef6e9;color:#4c814c;font-size:25px;margin:0 0 23px}.booking-summary{background:#f8faf6;border:1px solid #e9eee6;border-radius:11px;padding:24px;margin:23px 0}.booking-reference{font-size:10px;font-weight:700;letter-spacing:1px;color:#a77c4d;overflow-wrap:anywhere}.booking-summary h3{font-size:18px;line-height:1.4;color:#264533;margin:11px 0 22px}.booking-summary .tour-facts{margin:0}.booking-actions{display:flex;align-items:center;flex-wrap:wrap;gap:11px}.booking-actions>.booking-button{flex-grow:1}.booking-status{font-size:11px;color:#5b7f52;line-height:1.5}.booking-status:empty{display:none}.booking-empty{text-align:center;padding:28px 30px 12px}.booking-empty-icon{font-size:35px;display:block;color:#9eae9d;transform:rotate(-15deg);margin:10px 0 20px}.booking-empty h3{font-size:20px;letter-spacing:-.5px;color:#284a35;margin:0 0 12px}.booking-empty p{font-size:12px;line-height:1.9;color:#7b877e;max-width:340px;margin:0 auto 25px}.booking-list{display:grid;gap:15px}.booking-row{border:1px solid #e5eae3;border-radius:10px;padding:22px}.booking-row-top{display:flex;justify-content:space-between;gap:12px;align-items:center}.booking-draft-chip{border-radius:5px;background:#f6f1e7;color:#9b7f4f;font-size:9px;padding:5px 8px;white-space:nowrap}.booking-row h3{font-size:16px;line-height:1.5;letter-spacing:-.3px;color:#234932;margin:13px 0 9px}.booking-row-detail{font-size:11px;color:#879288;line-height:1.6;margin:0}.booking-row-actions{display:flex;gap:20px;margin-top:17px}.booking-text-button{border:0;background:none;font-size:11px!important;font-weight:600!important;color:#4c7556;cursor:pointer;padding:3px 0}.booking-text-button:hover{text-decoration:underline}.booking-delete{margin-left:auto;color:#a98c81}.booking-delete-confirm{background:#fff6ef;border:1px solid #f4e3d8;border-radius:8px;padding:15px;margin-top:18px}.booking-delete-confirm p{font-size:11px;line-height:1.7;color:#8b6251;margin:0 0 12px}.booking-delete-confirm .booking-button{padding:10px 14px}
@media(max-width:600px){.tour-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 24px);border-radius:14px}.tour-visual{height:190px}.tour-close{right:13px;top:13px}.tour-photo-label{left:23px;bottom:20px;font-size:9px}.tour-content{padding:24px 23px 10px}.tour-heading{font-size:25px;letter-spacing:-.8px}.tour-countries{font-size:12px}.tour-tabs{gap:25px;margin-top:15px}.tour-footer{padding:20px 23px 8px;gap:13px;align-items:flex-start;flex-direction:column}.tour-footer>.booking-button{width:100%;text-align:center}.tour-price{font-size:25px}.tour-service-note{text-align:center;margin:9px 23px 20px}.booking-content{padding:49px 23px 27px}.booking-grid{grid-template-columns:1fr;gap:17px}.booking-back{margin-bottom:23px}.booking-summary{padding:20px}.tour-facts{gap:16px}.booking-summary .tour-facts{grid-template-columns:1fr}.booking-actions{gap:8px}.booking-actions>.booking-button{width:100%}.booking-row{padding:18px}.booking-row-top{gap:7px}.booking-empty{padding:24px 0 8px}.booking-demo{font-size:10px;padding:11px 12px}.booking-row-detail{font-size:10px}.tour-tab-price{font-size:22px}}
@media(prefers-reduced-motion:reduce){.tour-dialog *{transition:none!important;scroll-behavior:auto!important}.booking-button:hover{transform:none}}
.tour-dialog{font-family:var(--font,"DM Sans",sans-serif)}.tour-dialog h2,.tour-dialog h3{font-family:var(--display,"DM Sans",sans-serif)}.tour-operational-notes{background:#fff9f0;border-radius:8px;padding:15px 19px 15px 32px;color:#896843}.tour-operational-notes li::marker{color:#d68a3e}
.booking-honeypot{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important}.booking-button:disabled{opacity:.65;cursor:wait;transform:none}.booking-order-link{display:block;text-align:center}.booking-row-actions a{text-decoration:none}.booking-row-actions a:hover{text-decoration:underline}

/* Eropa2go: shared palette for catalogue details and the booking flow. */
.tour-dialog{color:#173b52;box-shadow:0 30px 100px #173b5240}
.tour-dialog::backdrop{background:#102b3e9c}
.tour-close,.tour-heading,.tour-tab-price,.tour-price,.booking-summary h3,.booking-empty h3,.booking-row h3{color:#173b52}
.tour-description,.tour-bullets,.tour-route li,.booking-product-name,.booking-ack{color:#526875}
.tour-countries,.tour-facts dt,.tour-fineprint,.tour-price-caption,.tour-price-unit,.tour-service-note,.booking-privacy,.booking-row-detail{color:#637a87}
.tour-eyebrow{color:#a7480b}.tour-tab[aria-selected=true]{color:#a7480b;border-bottom-color:#ff7a21}
.booking-primary{background:#ff7a21;color:#173b52;box-shadow:0 4px 12px #ff7a2125}.booking-primary:hover{background:#ff8d42}
.booking-secondary{color:#173b52;background:#e7f4f8;border-color:#d4e7ed}.booking-secondary:hover{background:#d9edf3}
.booking-field label{color:#294e64}.booking-field input,.booking-field select,.booking-field textarea{color:#173b52;border-color:#d7e2e7}
.booking-field input:focus,.booking-field select:focus,.booking-field textarea:focus{outline-color:#ff7a214d;border-color:#ff7a21}
.booking-summary{background:#f0f8fb;border-color:#dceaf0}.booking-text-button{color:#285b75}.booking-back{color:#526c7d}
.tour-dialog .booking-button:focus-visible,.tour-dialog .tour-close:focus-visible,.tour-dialog .tour-tab:focus-visible{outline:3px solid #173b52;outline-offset:3px}
