/* Preview cards keep future services visibly distinct from available travel tools. */
.upcoming-catalog>header{max-width:690px;padding:18px 0 24px}.upcoming-catalog h2,.upcoming-detail h2{font:clamp(30px,4vw,42px) var(--serif);letter-spacing:-.8px;margin:12px 0}.upcoming-catalog>header p,.upcoming-detail>header p{color:#6f7c6b;line-height:1.75;font-size:14px;max-width:610px}.upcoming-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.upcoming-card{position:relative;display:flex;align-items:flex-start;flex-direction:column;min-width:0;gap:10px;padding:22px;border:1px solid #d6ddcd;border-radius:19px;background:#fffdf7;text-align:left;color:#35513d;transition:border-color .15s,background .15s}.upcoming-card:hover{background:#f1f4e8;border-color:#9eb18d}.upcoming-icon,.upcoming-detail-icon{display:grid;place-items:center;width:47px;height:47px;border-radius:15px;background:#edf0e2;color:#607b50;flex-shrink:0}.upcoming-icon svg{width:26px!important;height:26px!important;stroke-width:1.5}.upcoming-badge{display:inline-block;padding:5px 8px;border:1px solid #e4d9ba;background:#f4edd8;color:#8b7341;border-radius:20px;font-size:9px;line-height:1.25;font-weight:600;white-space:nowrap;letter-spacing:.2px}.upcoming-card>.upcoming-badge{position:absolute;top:22px;right:15px}.upcoming-card strong{display:block;font-size:15px;line-height:1.4;padding-right:12px}.upcoming-card small{font-size:11px;line-height:1.65;color:#7b8470;max-width:95%;font-weight:400}.upcoming-arrow{position:absolute;right:16px;bottom:18px;font-size:15px;color:#89947e}.home-upcoming{margin:30px 0}.home-upcoming .home-section-heading{margin-bottom:8px}.home-upcoming>p{color:#798571;font-size:12px;line-height:1.7;margin:0 0 17px}.upcoming-compact .upcoming-card{padding:18px;min-height:175px}.upcoming-compact .upcoming-badge{top:18px;right:14px}.upcoming-compact .upcoming-icon{width:40px;height:40px;border-radius:13px}.upcoming-compact .upcoming-icon svg{width:23px!important;height:23px!important}.upcoming-compact .upcoming-card strong{font-size:14px}.upcoming-detail{max-width:850px;margin:auto}.upcoming-back{display:flex;align-items:center;gap:8px;min-height:44px;background:transparent;border:0;padding:8px 0;font-size:12px;color:#657b59}.upcoming-detail>header{padding:24px 0 20px}.upcoming-detail-icon{display:inline-grid;width:64px;height:64px;border-radius:20px;vertical-align:middle;margin-right:16px}.upcoming-detail-icon svg{width:35px!important;height:35px!important;stroke-width:1.5}.upcoming-detail>header>.upcoming-badge{vertical-align:middle;font-size:11px;padding:7px 11px}.upcoming-detail h2{margin-top:22px}.upcoming-status{padding:22px 25px;border:1px dashed #c7d1b7;border-radius:18px;background:#eff3e7;margin:22px 0}.upcoming-status strong{font:22px var(--serif);font-weight:400;color:#45613e}.upcoming-status p{font-size:12px;color:#7b856d;line-height:1.7;margin-bottom:0}.upcoming-claim{background:#284e3f;color:#fff8e5;border-radius:23px;padding:30px}.upcoming-claim .eyebrow{color:#bac9a5;font-size:9px}.upcoming-claim h3{font:29px var(--serif);line-height:1.3;max-width:620px;margin:16px 0 18px}.upcoming-claim h3 strong{font-size:clamp(38px,5vw,54px);font-weight:400;color:#f0d390;white-space:nowrap}.upcoming-claim h3>span{display:block;font-size:23px;margin-top:3px}.upcoming-claim>p{color:#d6e0cb;font-size:13px;line-height:1.75}.upcoming-cases{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:0;margin:15px 0 24px}.upcoming-cases li{display:flex;align-items:center;gap:9px;padding:13px;border:1px solid #657b5f;background:#ffffff08;border-radius:11px;font-size:13px}.upcoming-cases svg{width:18px!important;height:18px!important;color:#cfdaa9;flex-shrink:0}.upcoming-claim .upcoming-eligibility{font-size:12px;border-top:1px solid #a2b58e50;padding-top:20px}.upcoming-claim .upcoming-rate{font-size:10px;color:#b8c8ab;margin:13px 0}.upcoming-sources{display:flex;flex-wrap:wrap;gap:8px 20px}.upcoming-sources a{display:inline-flex;align-items:center;min-height:36px;font-size:11px;text-underline-offset:4px;color:#dfdfb8}.upcoming-card:focus-visible,.upcoming-back:focus-visible{outline:3px solid #bb8c4c;outline-offset:3px}
@media(max-width:760px){.upcoming-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.upcoming-card,.upcoming-compact .upcoming-card{padding:15px;min-height:185px;gap:9px}.upcoming-card>.upcoming-badge,.upcoming-compact .upcoming-badge{position:static;font-size:8px;padding:4px 7px;order:0}.upcoming-card .upcoming-icon{width:39px;height:39px;border-radius:12px}.upcoming-card strong,.upcoming-compact .upcoming-card strong{font-size:13px;padding-right:0;order:1}.upcoming-card small{font-size:10px;order:2}.upcoming-card .upcoming-arrow{display:none}.home-upcoming .home-section-heading h2{font-size:23px}.upcoming-catalog h2,.upcoming-detail h2{font-size:32px}.upcoming-detail>header{padding:18px 0 10px}.upcoming-claim{padding:23px 20px;border-radius:20px}.upcoming-claim h3{font-size:26px}.upcoming-cases{grid-template-columns:1fr;gap:8px}.upcoming-cases li{padding:12px;font-size:12px}.upcoming-status{padding:19px}.upcoming-status strong{font-size:21px}}
@media(prefers-reduced-motion:reduce){.upcoming-card{transition:none}}

/* Available partner reservations. */
a.upcoming-card{text-decoration:none}.upcoming-available{background:#e4f1e7;border-color:#bed6c3;color:#286144}.upcoming-booking{margin:22px 0}.upcoming-book-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 24px;border-radius:12px;background:#19664f;color:#fff;text-decoration:none;font-weight:600}.upcoming-book-button:hover{background:#124e3c}.upcoming-book-button:focus-visible{outline:3px solid #bb8c4c;outline-offset:3px}.upcoming-booking p{font-size:12px;line-height:1.7;color:#6f7c6b}

/* Partner logos retain their original colors and proportions. */
.upcoming-icon.partner-icon,.upcoming-detail-icon.partner-icon,.upcoming-compact .upcoming-icon.partner-icon{width:128px;height:49px;border-radius:0;background:transparent}.tiqets-logo{display:block;width:128px;max-width:100%;height:auto;object-fit:contain}.upcoming-detail-icon.partner-icon{width:160px;height:61px}.upcoming-detail-icon .tiqets-logo{width:160px}.esim-provider{transform:none}.saily-logo{display:block;width:140px;max-width:80%;height:auto;object-fit:contain}@media(max-width:650px){.esim-provider{display:flex;aspect-ratio:auto;min-height:100px;width:180px;max-width:100%;margin-top:12px;box-shadow:none}.saily-logo{width:112px}}

.compensair-logo{display:block;width:160px;max-width:100%;height:auto;object-fit:contain}.upcoming-card:has(.compensair-logo)>.upcoming-badge{position:static}.upcoming-detail-icon:has(.compensair-logo){width:200px;height:50px}.upcoming-detail-icon .compensair-logo{width:200px}.compensair-steps{padding-left:22px;font-size:14px;line-height:1.8;color:#d6e0cb}.compensair-steps li+li{margin-top:9px}

.upcoming-card[data-navigate="service:luggage-storage"],.upcoming-detail[data-service-theme="luggage-storage"]{--app-tone:#388778;--app-deep:#256555;--app-soft:#e6f5ef;--app-line:#c5dfd5;--app-ink:#2c6253}

.upcoming-ticket-terms{font-size:12px;line-height:1.7;color:#6f7c6b;margin:18px 0}

.claims-widget-section{margin:24px 0;min-width:0}.claims-widget-section>h3{font:26px var(--serif);color:#334772;margin:0 0 16px}.claims-widget-embed{width:100%;min-width:0;overflow:auto}.claims-widget-embed iframe{display:block;max-width:100%;border:0}.claims-widget-message{font-size:13px;line-height:1.7;color:#6f7c6b}.claims-widget-message[hidden]{display:none}

/* Full travel catalog: tools and services share a single entry point. */
.travel-hub-intro{margin:12px 0 24px}.travel-hub-intro h3{font:clamp(26px,4vw,36px) var(--serif);color:#254f4b;margin:10px 0}.travel-hub-intro p{color:#687c72;font-size:14px;line-height:1.6;margin:0}.travel-hub h4{font-size:17px;color:#254f4b;margin:26px 0 14px}.travel-hub-tools{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.travel-hub .home-service{display:flex;flex-direction:column;align-items:flex-start;text-align:left;min-width:0;padding:16px;gap:10px}.travel-hub .home-service-icon{width:42px;height:42px;display:grid;place-items:center}.travel-hub .home-service-icon svg{width:28px;height:28px}.travel-hub .home-service strong{font-size:15px}.travel-hub .home-service small{font-size:12px;line-height:1.5}.travel-hub .upcoming-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.travel-hub .upcoming-card{min-height:180px;padding:16px}.travel-hub .upcoming-card strong{font-size:16px}.travel-hub .upcoming-card small{font-size:12px}.travel-hub .upcoming-badge{font-size:9px}.travel-hub button:focus-visible{outline:3px solid #b98643;outline-offset:3px}
@media(max-width:700px){.travel-hub-tools{grid-template-columns:repeat(3,minmax(0,1fr))}.travel-hub .upcoming-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:430px){.travel-hub-tools{grid-template-columns:repeat(2,minmax(0,1fr))}.travel-hub .home-service,.travel-hub .upcoming-card{padding:14px}.travel-hub .upcoming-card{min-height:185px}}

/* Owner-provided partner artwork: full image, original colors and aspect ratio. */
.upcoming-detail .upcoming-detail-icon.partner-icon{width:240px;max-width:100%;height:auto;display:inline-block;background:transparent;border:0;border-radius:12px;box-shadow:none;overflow:hidden;vertical-align:middle}.upcoming-detail .upcoming-detail-icon.partner-icon::after{display:none}.partner-owner-logo{display:block;width:100%;height:auto;object-fit:contain}.esim-provider:has(.partner-owner-logo){width:240px;max-width:100%;min-height:0;aspect-ratio:auto;display:flex;flex-direction:column;gap:10px;padding:0;background:transparent;border:0;box-shadow:none;border-radius:12px;overflow:hidden;transform:none}.esim-provider .saily-logo.partner-owner-logo{width:240px;max-width:100%;height:auto}.esim-provider:has(.partner-owner-logo)::before,.esim-provider:has(.partner-owner-logo)::after{display:none}@media(max-width:430px){.upcoming-detail .upcoming-detail-icon.partner-icon{width:210px}}

.pickup-widget-section{margin:24px 0;min-width:0}.pickup-widget-section>h3{font:26px var(--serif);color:#254f4b;margin:0 0 16px}.pickup-widget-embed{width:100%;min-width:0}.pickup-widget-embed iframe{max-width:100%;border:0}.pickup-widget-message{font-size:13px;line-height:1.7;color:#6f7c6b}.pickup-widget-message[hidden]{display:none}

.flight-widget-section{margin:24px 0;min-width:0}.flight-widget-section>h3{font:26px var(--serif);color:#254f4b;margin:0 0 16px}.flight-widget-embed{width:100%;min-width:0}.flight-widget-embed iframe{max-width:100%;border:0}.flight-widget-message{font-size:13px;line-height:1.7;color:#6f7c6b}.flight-widget-message[hidden]{display:none}

.upcoming-card[data-navigate="service:motorbike-rentals"],.upcoming-detail[data-service-theme="motorbike-rentals"]{--app-tone:#3568a2;--app-deep:#254d7d;--app-soft:#edf3fb;--app-line:#cbdbee;--app-ink:#254d7d}
.bike-widget-section{margin:24px 0;min-width:0}.bike-widget-section>h3{font:26px var(--serif);color:#254f4b;margin:0 0 16px}.bike-widget-embed{width:100%;min-width:0}.bike-widget-embed iframe{max-width:100%;border:0}.bike-widget-message{font-size:13px;line-height:1.7;color:#6f7c6b}.bike-widget-message[hidden]{display:none}

/* Distinct service palettes, in catalogue order. */
.upcoming-card[data-navigate="service:flights"],section.upcoming-detail[data-service-theme="flights"]{--app-tone:#2764b6;--app-deep:#19477f;--app-soft:#e9f1ff;--app-line:#c4d7f5;--app-ink:#19477f}
.upcoming-card[data-navigate="service:airport-pickups"],section.upcoming-detail[data-service-theme="airport-pickups"]{--app-tone:#067c83;--app-deep:#05595e;--app-soft:#e4f5f4;--app-line:#b9dfdf;--app-ink:#05595e}
.upcoming-card[data-navigate="service:car-rentals"],section.upcoming-detail[data-service-theme="car-rentals"]{--app-tone:#a65a19;--app-deep:#78400f;--app-soft:#fff0df;--app-line:#efd2ad;--app-ink:#78400f}
.upcoming-card[data-navigate="service:motorbike-rentals"],section.upcoming-detail[data-service-theme="motorbike-rentals"]{--app-tone:#b33f4e;--app-deep:#862a37;--app-soft:#fdebee;--app-line:#eec5cc;--app-ink:#862a37}
.upcoming-card[data-navigate="service:attractions"],section.upcoming-detail[data-service-theme="attractions"]{--app-tone:#95700e;--app-deep:#6d5108;--app-soft:#fff7d9;--app-line:#eaddab;--app-ink:#6d5108}
.upcoming-card[data-navigate="service:tours"],section.upcoming-detail[data-service-theme="tours"]{--app-tone:#49802f;--app-deep:#335e20;--app-soft:#edf7e7;--app-line:#cedfbd;--app-ink:#335e20}
.upcoming-card[data-navigate="service:audio-guides"],section.upcoming-detail[data-service-theme="audio-guides"]{--app-tone:#7950ad;--app-deep:#573580;--app-soft:#f3ebfc;--app-line:#dcc9ee;--app-ink:#573580}
.upcoming-card[data-navigate="service:luggage-storage"],section.upcoming-detail[data-service-theme="luggage-storage"]{--app-tone:#b24b85;--app-deep:#82335f;--app-soft:#fdeaf5;--app-line:#edc7de;--app-ink:#82335f}
.upcoming-card[data-navigate="service:claims"],section.upcoming-detail[data-service-theme="claims"]{--app-tone:#506276;--app-deep:#354558;--app-soft:#edf0f4;--app-line:#cbd5e0;--app-ink:#354558}
.upcoming-card[data-navigate="service:host-local"],section.upcoming-detail[data-service-theme="host-local"]{--app-tone:#866344;--app-deep:#61462e;--app-soft:#f5eee6;--app-line:#dfcfbd;--app-ink:#61462e}
.upcoming-card[data-navigate="service:insurance"],section.upcoming-detail[data-service-theme="insurance"]{--app-tone:#497665;--app-deep:#315445;--app-soft:#eaf2ed;--app-line:#cadcd2;--app-ink:#315445}
.upcoming-card[data-navigate="service:stays"],section.upcoming-detail[data-service-theme="stays"]{--app-tone:#68619c;--app-deep:#49436f;--app-soft:#efedf9;--app-line:#d6d1ea;--app-ink:#49436f}
.service-interest{margin:24px 0;padding:24px;border:1px solid var(--app-line);border-radius:20px;background:var(--app-soft);color:var(--app-ink)}.service-interest h3{margin:0 0 12px;font:26px var(--serif)}.service-interest p{font-size:14px;line-height:1.6}.interest-actions{display:flex;flex-wrap:wrap;gap:12px}.interest-actions button{padding:12px 20px;border:2px solid var(--app-deep);border-radius:12px;background:white;color:var(--app-deep);font:600 14px var(--sans);cursor:pointer}.interest-actions button[aria-pressed="true"]{background:var(--app-deep);color:white}.interest-actions button:focus-visible{outline:3px solid var(--app-tone);outline-offset:3px}.interest-actions button:disabled{opacity:.6;cursor:wait}[data-interest-status]{min-height:23px}

/* Upcoming services remain accessible for interest voting, with an inactive gray appearance. */
.upcoming-card:has(>.upcoming-badge:not(.upcoming-available)),section.upcoming-detail:has(>header>.upcoming-badge:not(.upcoming-available)){--app-tone:#858585;--app-deep:#626262;--app-soft:#f1f1f1;--app-line:#d5d5d5;--app-ink:#555;filter:grayscale(1)}
.upcoming-card:has(>.upcoming-badge:not(.upcoming-available)){background:#f3f3f3;border-color:#d5d5d5;color:#555}
.upcoming-card:has(>.upcoming-badge:not(.upcoming-available)):hover{background:#eaeaea;border-color:#aaa}
