.travel-hint{font-size:13px;line-height:1.6;color:#4c4a61;margin:8px 0}.travel-hint a{color:#49318d;text-decoration:underline;text-underline-offset:3px}.catalog-note.travel-hint{display:block!important;font-size:14px;margin:0 0 20px}
.travel-modes{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.travel-modes button,#travel-google-clear{font:inherit;font-weight:700;border:1px solid #c9b7e8;border-radius:10px;background:white;color:#49318d;padding:10px 14px;cursor:pointer}.travel-modes button[aria-pressed="true"]{background:#49318d;color:white}.travel-google-panel{min-height:260px;line-height:1.6}.travel-google-panel[hidden],#travel-distance-field[hidden],.travel-result[hidden]{display:none!important}#travel-google-field{min-height:56px;margin:12px 0}#travel-google-field gmp-place-autocomplete{display:block;width:100%;min-width:0;color-scheme:light}#travel-google-price{display:block;font-size:32px}#travel-google-clear{font-size:13px}

#travel-google-search,.travel-google-options button{font:inherit;padding:10px 14px;border:1px solid #c9b7e8;border-radius:10px;background:#fff;color:#49318d;cursor:pointer}#travel-google-search{margin:8px 0;background:#49318d;color:#fff}.travel-google-options{list-style:none;padding:0;margin:8px 0}.travel-google-options li{margin:6px 0}.travel-google-options button{width:100%;text-align:left;white-space:normal}.travel-google-options button:focus-visible{outline:3px solid #8065ae}.travel-google-panel details[hidden]{display:none!important}.travel-google-panel details p{overflow-wrap:anywhere}.travel-map-credit{font-size:12px}#travel-google-query{box-sizing:border-box;width:100%}

.home-travel-panel{grid-column:1/-1;min-width:0;margin:0 0 10px}.home-travel-panel #travel-google-field{min-height:0;margin:0}.home-travel-panel #travel-google-search{margin:0 0 6px}.home-travel-panel .travel-map-credit{margin:3px 0;font-size:11px}.home-travel-panel #travel-google-status{font-size:13px;line-height:1.5;margin:4px 0}.home-travel-panel #travel-google-price{font-size:17px}.home-travel-panel details[hidden]{display:none!important}.home-travel-panel details p{overflow-wrap:anywhere}#booking-travel-total{font-weight:800;font-size:17px}#booking-travel-total[hidden],.booking-total .total-travel[hidden]{display:none!important}
/* Compact homepage location field; the input remains inside its original label. */
.home-location-control{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;grid-column:1/-1;min-width:0;margin-bottom:3px}form[data-travel-form] .home-location-control>label{min-width:0;margin:0}.home-location-heading{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 10px;margin-bottom:6px}.home-location-rate{font-size:12px;font-weight:400;line-height:1.4;color:#64615c}#home-location-search #travel-google-search{margin:0;min-height:48px;padding:10px 14px;font-size:14px;white-space:nowrap}.home-location-control input{margin:0;width:100%;min-width:0;box-sizing:border-box}
.home-travel-panel{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:8px;row-gap:2px;margin:0 0 8px}.home-travel-panel #travel-google-field{display:contents}.home-travel-panel .travel-google-options{grid-column:1/-1;grid-row:1;margin:2px 0 4px;padding:3px;border:1px solid #e3ddea;border-radius:10px;max-height:184px;overflow-y:auto;background:#fff}.home-travel-panel .travel-google-options:empty{display:none}.home-travel-panel .travel-google-options li{margin:0}.home-travel-panel .travel-google-options button{display:block;padding:7px 10px;border:0;border-radius:6px;font-size:13px;line-height:1.35;color:#37313e;min-height:34px}.home-travel-panel .travel-google-options button:hover{background:#f5f0fa}.home-travel-panel #travel-google-price{grid-column:1/-1;grid-row:2;font-size:14px;line-height:1.4;font-weight:600}.home-travel-panel #travel-google-status{grid-column:1;grid-row:3;font-size:12px;line-height:1.4;margin:0;color:#64615c}.home-travel-panel .travel-map-credit{grid-column:2;grid-row:3;margin:0;font-family:Roboto,Arial,sans-serif;font-size:12px;line-height:1.4;font-weight:400;font-style:normal;letter-spacing:normal;white-space:nowrap;color:#5e5e5e;align-self:end}.home-travel-panel .travel-map-credit[hidden]{display:none!important}.home-travel-panel #travel-google-status:empty,.home-travel-panel #travel-google-price:empty{display:none}.home-travel-panel details{grid-column:1/-1;grid-row:4;font-size:12px}
@media(max-width:420px){.home-location-heading{gap:2px}.home-location-rate{width:100%;font-size:11px}#home-location-search #travel-google-search{padding:10px 11px}.home-location-control{gap:6px}}

/* Natural label wrapping across the full width, including above the search button. */
#christmas-form .home-location-control>label{display:contents}
#christmas-form .home-location-control input{min-height:48px}
form[data-travel-form] .home-location-control>label{display:contents}.home-location-control .home-location-heading{grid-column:1/-1;grid-row:1;margin:0;gap:2px 10px}.home-location-control input{grid-column:1;grid-row:2}.home-location-control #home-location-search{grid-column:2;grid-row:2}.home-location-control .home-location-rate{width:auto;font-size:12px}.home-location-control{row-gap:6px}
#booking-form .booking-final-summary{padding:16px;border:1px solid #d7a589;border-radius:14px;background:#fff0e5;margin:14px 0 16px;min-width:0}#booking-form .booking-final-summary[hidden]{display:none}#booking-form .booking-final-summary .booking-selection-summary{padding:0;margin:0;border:0;border-radius:0;background:none}#booking-form .booking-final-summary .booking-total{border:0;border-top:1px solid #e6cbb9;border-radius:0;padding:12px 0 0;margin:12px 0 0;background:none;gap:5px}.booking-final-summary .booking-total:has(#booking-travel-total:not([hidden])){display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline}.booking-final-summary .booking-total:has(#booking-travel-total:not([hidden]))>span{grid-column:1;grid-row:1;font-size:13px}.booking-final-summary .booking-total:has(#booking-travel-total:not([hidden]))>.booking-total-line{grid-column:2;grid-row:1}.booking-final-summary .booking-total:has(#booking-travel-total:not([hidden])) #booking-total-price{font-size:14px}.booking-final-summary #booking-travel-line{grid-column:1/-1;grid-row:2;font-size:13px;margin:0}.booking-final-summary #booking-travel-total{grid-column:1/-1;grid-row:3;font-size:25px;line-height:1.25;margin:6px 0 0;font-weight:800}#booking-travel-line[hidden]{display:none!important}

/* One compact, naturally wrapping totals row: duration, service, travel, grand total. */
#booking-form .booking-final-summary .booking-inline-totals{display:flex!important;flex-direction:row;flex-wrap:wrap;align-items:baseline;gap:5px 16px;padding-top:10px;margin-top:10px}.booking-inline-totals .selection-duration,.booking-inline-totals .booking-subtotal,.booking-inline-totals #booking-travel-line{margin:0!important;font-size:13px;line-height:1.5;white-space:nowrap;font-weight:400}.booking-inline-totals .selection-duration{order:0}.booking-inline-totals .booking-subtotal{display:inline-flex;align-items:baseline;gap:4px;order:1}.booking-inline-totals .booking-total-line{display:contents}.booking-final-summary .booking-inline-totals #booking-total-price{font-size:13px!important;line-height:1.5;font-weight:600}.booking-final-summary .booking-inline-totals #booking-travel-line{order:2}.booking-final-summary .booking-inline-totals #booking-travel-total{order:3;font-size:16px;line-height:1.5;white-space:nowrap;margin:0;font-weight:800}.booking-inline-totals .total-travel{order:4;flex-basis:100%}
#booking-form .booking-final-summary .booking-inline-totals[hidden]{display:none!important}

/* Shared booking cards, one row of totals with natural wrapping. */
form .booking-travel-summary{grid-column:1/-1;padding:16px;border:1px solid #d7a589;border-radius:14px;background:#fff0e5;margin:14px 0 16px;min-width:0}form .booking-travel-summary[hidden]{display:none!important}.booking-travel-summary h4{margin:0 0 10px;font-size:16px;font-weight:700}.booking-travel-summary #booking-choice-lines{padding-left:18px;margin:0 0 10px;font-size:13px;line-height:1.6}.booking-travel-summary #booking-choice-lines li{margin:3px 0}.booking-travel-summary #booking-choice-lines:empty{display:none}form .booking-travel-summary .booking-other-totals{display:flex;flex-wrap:wrap;align-items:baseline;gap:5px 16px;margin:10px 0 0;padding-top:10px;border-top:1px solid #e6cbb9}.booking-other-totals .booking-other-subtotal{display:inline-flex;gap:4px;align-items:baseline}.booking-other-totals :is(#standalone-duration,#christmas-planned-duration){order:-1}.booking-other-totals :is(p,span,strong){margin:0;font-size:13px!important;line-height:1.5}.booking-other-totals #booking-travel-line{font-size:13px;white-space:nowrap}.booking-other-totals #booking-travel-total{font-size:16px!important;line-height:1.5;white-space:nowrap;font-weight:800}.booking-travel-summary .christmas-total-travel{display:block;font-size:12px;margin:8px 0 0}.booking-travel-summary .christmas-total-travel[hidden],.booking-travel-summary .total-travel[hidden]{display:none!important}form .booking-travel-summary .total-travel{font-size:12px;margin:8px 0 0}#b2b-form .home-location-control{margin-top:16px}#b2b-form .home-location-control>label{display:contents}#b2b-form .home-location-control input{font:inherit;padding:12px;border:1px solid #d7d5d0;border-radius:10px}.home-location-control .field-error{grid-column:1/-1}#b2b-travel-summary #booking-travel-total{display:none}
form[data-travel-form] :is(#standalone-total,.christmas-form-total).booking-travel-summary{background:#fff0e5!important;border:1px solid #d7a589!important;border-radius:14px;padding:16px}.booking-other-totals #christmas-planned-duration{font-weight:400!important}
