/* Shared buying experience for existing city and country destination pages. */
.city-experience{--ce-ink:#111b31;--ce-muted:#59667a;--ce-line:#e1e7f0;--ce-brand:#4338ca;--ce-soft:#f3f3ff;background:#f7f9fc;color:var(--ce-ink)}
.city-experience #city-main{font-family:Inter,system-ui,sans-serif;-webkit-font-smoothing:antialiased}
.city-experience #city-main *{box-sizing:border-box}
.city-experience #city-main a:focus-visible,.city-experience #city-main button:focus-visible,.city-experience #city-main summary:focus-visible{outline:3px solid #4f46e5;outline-offset:4px}
.ce-hero{padding:44px 24px 50px;background:#fff;border-bottom:1px solid var(--ce-line)}
.ce-hero-inner{max-width:1152px;margin:auto;display:grid;grid-template-columns:1.1fr 1fr;gap:52px;align-items:center}
.ce-eyebrow{margin:0 0 14px;font-size:11px;font-weight:800;letter-spacing:.13em;line-height:1.6;color:var(--ce-brand)}
.city-experience #heroHeadline{font-size:clamp(2.6rem,4.4vw,4.4rem);line-height:1.04;letter-spacing:-.045em;font-weight:800;max-width:650px;margin:0 0 22px;color:var(--ce-ink);text-wrap:balance}
.city-experience #heroHeadline span{color:var(--ce-brand)}
.city-experience #heroSubheadline{font-size:17px;line-height:1.75;color:var(--ce-muted);margin:0 0 28px;max-width:570px}
.ce-hero-actions{display:flex;gap:12px;flex-wrap:wrap}
.ce-btn{display:inline-flex;justify-content:center;align-items:center;gap:10px;min-height:50px;padding:14px 20px;border-radius:12px;font-weight:750;font-size:14px;line-height:1.4;text-decoration:none;transition:background .15s,box-shadow .15s}
.ce-btn-primary{background:var(--ce-brand);color:#fff!important;border:1px solid var(--ce-brand);box-shadow:0 8px 20px -12px #4338ca}
.ce-btn-primary:hover{background:#312e81;color:white!important;box-shadow:0 10px 22px -10px #4338ca}
.ce-btn-secondary{background:white;border:1px solid #cbd3e1;color:var(--ce-ink)}
.ce-btn-secondary:hover{background:#f3f3ff}
.ce-facts{list-style:none;display:flex;flex-wrap:wrap;gap:10px 18px;margin:24px 0 0;padding:0;color:var(--ce-muted);font-size:12px}
.ce-facts li::before{content:'✓';color:#047857;margin-right:6px;font-weight:800}
.ce-hero-image{position:relative;min-height:390px;border-radius:24px;background-size:cover;background-position:center;box-shadow:0 14px 40px -22px #25344c;overflow:hidden}
.ce-hero-image::after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#102039aa)}
.ce-image-caption{position:absolute;z-index:1;bottom:20px;left:22px;color:white;font-size:13px;font-weight:700;letter-spacing:.03em}
.ce-page-nav{position:sticky;top:0;z-index:20;background:#ffffffed;backdrop-filter:blur(12px);border-bottom:1px solid var(--ce-line)}
.ce-page-nav>div{display:flex;gap:8px;max-width:1200px;padding:10px 24px;margin:auto;overflow-x:auto;scrollbar-width:thin}
.ce-page-nav a{white-space:nowrap;padding:9px 14px;font-size:13px;font-weight:700;color:#475569;border-radius:9px;text-decoration:none}
.ce-page-nav a:hover{background:var(--ce-soft);color:var(--ce-brand)}
.city-experience #city-main>.max-w-7xl{max-width:1200px;padding:0 24px}
.city-experience #plans,.city-experience #whyPerfect,.city-experience #howItWorks,.city-experience #airportGuide,.city-experience #travelTips,.city-experience #faq{background:transparent;border:0;margin-top:0;padding:46px 0}
.city-experience #plans>div,.city-experience #whyPerfect>div,.city-experience #howItWorks>div,.city-experience #airportGuide>div,.city-experience #travelTips>div,.city-experience #faq>div{max-width:none;padding-inline:0}
.city-experience #plans{padding-top:40px}
.city-experience #city-main h2{font-size:clamp(25px,2.5vw,34px);line-height:1.2;letter-spacing:-.025em;font-weight:800;color:var(--ce-ink)}
.ce-buying{padding:0;margin:0 0 44px;scroll-margin-top:140px}
.ce-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:24px}
.ce-section-head h2{margin:0 0 12px}.ce-section-head p:not(.ce-eyebrow){max-width:650px;line-height:1.65;color:var(--ce-muted);font-size:15px;margin:0}
.ce-currency{display:inline-block;white-space:nowrap;font-size:11px;letter-spacing:.03em;font-weight:750;background:#e8ebf8;color:#3730a3;border-radius:30px;padding:8px 12px}
.ce-choices{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:0;padding:0}
.ce-choice{display:flex;flex-direction:column;padding:24px;background:#fff;border:1px solid var(--ce-line);border-radius:20px;min-width:0;box-shadow:0 6px 24px -18px #1e293b}
.ce-choice-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.ce-choice-top img{object-fit:contain;border-radius:3px}
.ce-choice-trip{font-size:12px;font-weight:800;color:var(--ce-brand);background:var(--ce-soft);padding:7px 11px;border-radius:7px}
.ce-choice-minimum{font-size:12px;color:var(--ce-muted);margin:13px 0 20px;line-height:1.5}
.ce-choice h3{font-size:36px;line-height:1.1;font-weight:800;letter-spacing:-.04em;margin:0 0 9px}
.ce-choice-validity{font-size:13px;color:var(--ce-muted);margin:0}
.ce-choice-price{font-size:30px;font-weight:800;letter-spacing:-.035em;margin:20px 0}.ce-choice-price>span{font-size:12px;letter-spacing:0;font-weight:700}.ce-choice-price small{font-size:12px;font-weight:500;letter-spacing:0;color:var(--ce-muted)}
.ce-choice dl{display:grid;gap:12px;padding-top:17px;border-top:1px solid var(--ce-line);font-size:12px;margin:0 0 22px;line-height:1.6}.ce-choice dt{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#6b7484;font-weight:700}.ce-choice dd{margin:2px 0 0;color:#283752;overflow-wrap:anywhere}
.ce-choice .ce-btn{margin-top:auto;width:100%}
.ce-method{margin:16px 0 24px;font-size:12px;line-height:1.8;color:var(--ce-muted)}.ce-method summary{cursor:pointer;color:#4338ca;font-weight:750}.ce-method p{margin:10px 0}.ce-method h3{margin-top:18px}
.ce-route{display:flex;align-items:center;justify-content:space-between;gap:26px;padding:26px 28px;background:#eeefff;border:1px solid #dcddfb;border-radius:16px;margin-top:26px}.ce-route h3{font-size:19px;line-height:1.3;font-weight:800;margin:0 0 9px;letter-spacing:-.02em}.ce-route p:not(.ce-eyebrow){font-size:14px;line-height:1.75;color:#4a5670;margin:0;max-width:730px}.ce-route .ce-eyebrow{margin-bottom:8px}.ce-route>a{flex:0 0 200px;color:var(--ce-brand);font-weight:750;font-size:13px;line-height:1.6;text-decoration:underline;text-underline-offset:3px}
.ce-plan-types{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:22px}.ce-plan-types>div{padding:0 4px}.ce-plan-types h3{font-size:14px;font-weight:750;margin:0 0 6px}.ce-plan-types p{font-size:13px;line-height:1.7;color:var(--ce-muted);margin:0}
.city-experience #city-all-plans{padding-top:16px;margin-bottom:24px;scroll-margin-top:140px}.city-experience #city-all-plans h2{font-size:26px;margin-bottom:10px}.city-experience #city-all-plans p{font-size:14px}
.city-experience #plansGrid{gap:18px}.city-experience #plansGrid>div{border-radius:18px;overflow:hidden}.city-experience #plansGrid a{font-size:14px}.city-experience .filter-btn{font-size:12px;padding:8px 14px}.city-experience #plans select{min-height:44px}
.city-experience #whyPerfect h2,.city-experience #howItWorks h2,.city-experience #airportGuide>div>h2,.city-experience #travelTips h2,.city-experience #faq h2{margin-bottom:28px}
.ce-resource-panel{display:grid;grid-template-columns:1.3fr 1fr;gap:40px;padding:34px;background:#fff;border:1px solid var(--ce-line);border-radius:20px;margin:24px 0 42px;scroll-margin-top:140px}.ce-resource-panel h2{margin:0 0 16px}.ce-resource-panel p:not(.ce-eyebrow){font-size:14px;line-height:1.8;color:var(--ce-muted);margin:0 0 18px}.ce-resource-panel aside{border-left:1px solid var(--ce-line);padding-left:30px}.ce-resource-panel h3{font-size:17px;font-weight:750;line-height:1.5;margin:0 0 12px}.ce-resource-panel a,.ce-setup>p a{color:var(--ce-brand);font-weight:700;text-decoration:underline;text-underline-offset:3px;font-size:13px;line-height:1.6}
.ce-setup{margin-bottom:36px;scroll-margin-top:140px}.ce-setup h2{margin:0 0 24px}.ce-setup nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.ce-setup nav a{display:flex;flex-direction:column;align-items:flex-start;gap:14px;padding:20px;border:1px solid var(--ce-line);background:white;border-radius:16px;text-decoration:none;color:var(--ce-ink)}.ce-setup nav a:hover{border-color:#a5a0e4;background:#fafaff}.ce-setup nav span{color:var(--ce-brand);font-size:11px;font-weight:800;letter-spacing:.08em}.ce-setup nav strong{font-size:14px}.ce-setup nav small{font-size:12px;color:var(--ce-muted);line-height:1.6}.ce-setup>p:not(.ce-eyebrow){font-size:13px;color:var(--ce-muted);line-height:1.8;margin-top:18px}
.city-experience .ce-app-section{padding:28px 0;border-top:1px solid var(--ce-line);background:transparent}.city-experience .ce-app-section>div{padding:0}.city-experience .ce-app-section .text-center{margin-bottom:18px}.city-experience .ce-app-section p{font-size:15px}
.city-experience #city-main .faq-card{box-shadow:none;border:1px solid var(--ce-line);border-radius:14px}.city-experience #city-main .faq-card:hover{transform:none}.city-experience #city-main [id]{scroll-margin-top:140px}
@media(max-width:1000px){.ce-hero-inner{gap:30px}.ce-hero-image{min-height:350px}.ce-choices{gap:14px}.ce-choice{padding:20px}.ce-setup nav{grid-template-columns:repeat(2,minmax(0,1fr))}.ce-page-nav{top:0}}
@media(max-width:700px){.ce-hero{padding:28px 20px 30px}.ce-hero-inner{grid-template-columns:1fr;gap:26px}.city-experience #heroHeadline{font-size:40px}.city-experience #heroSubheadline{font-size:15px;line-height:1.75;margin-bottom:22px}.ce-hero-image{min-height:190px;order:2;border-radius:16px}.ce-hero-actions{display:grid;grid-template-columns:1fr}.ce-btn{min-height:48px}.ce-facts{font-size:11px;gap:8px 14px;margin-top:18px}.ce-page-nav>div{padding:8px 12px;gap:0}.ce-page-nav a{font-size:12px;padding:9px 12px}.city-experience #city-main>.max-w-7xl{padding:0 20px}.city-experience #plans{padding-top:30px}.ce-section-head{display:block}.ce-currency{margin-top:14px}.ce-choices{grid-template-columns:1fr;gap:16px}.ce-choice{padding:22px}.ce-choice-minimum{margin-bottom:15px}.ce-choice h3{font-size:34px}.ce-choice dl{grid-template-columns:1fr 1fr;gap:16px}.ce-choice-price{margin:16px 0}.ce-route{display:block;padding:22px}.ce-route>a{display:inline-block;margin-top:16px}.ce-plan-types{grid-template-columns:1fr;gap:18px}.ce-resource-panel{grid-template-columns:1fr;gap:24px;padding:24px}.ce-resource-panel aside{border:0;border-top:1px solid var(--ce-line);padding:22px 0 0}.ce-setup nav{gap:10px}.ce-setup nav a{padding:16px;gap:11px}.ce-setup nav strong{font-size:13px}.ce-setup nav small{font-size:11px}.city-experience #plansGrid{grid-template-columns:1fr}.city-experience #whyPerfect,.city-experience #howItWorks,.city-experience #airportGuide,.city-experience #travelTips,.city-experience #faq{padding-block:30px}}
@media(prefers-reduced-motion:reduce){.city-experience{scroll-behavior:auto}.city-experience *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
.ce-essentials{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0;padding:0}.ce-essentials li{font-size:13px;line-height:1.7;background:white;border:1px solid var(--ce-line);padding:20px;border-radius:14px}.city-experience #airportGuide{padding-top:0}.city-experience .ce-final-cta{background:#171d3b;padding:44px 24px;margin-top:24px;border-radius:22px}.city-experience .ce-final-cta h2{color:#fff!important;font-size:30px!important}.city-experience .ce-final-cta p{font-size:15px;line-height:1.7;color:#d9def7}.city-experience .ce-final-cta button{background:#fff!important;color:#312e81!important;border:0!important;border-radius:12px!important;box-shadow:none!important;padding:14px 24px!important;font-size:14px!important;transform:none!important}@media(max-width:700px){.ce-essentials{grid-template-columns:1fr}.ce-essentials li{padding:16px}.city-experience .ce-final-cta{padding:32px 22px}}

.ce-page-nav a{display:flex;align-items:center;min-height:44px}.city-experience .filter-btn{min-height:44px}
/* Shared destination components also support every existing country catalogue. */
.country-experience #country-page{font-family:Inter,system-ui,sans-serif;-webkit-font-smoothing:antialiased;color:var(--ce-ink)}
.country-experience #country-page *{box-sizing:border-box}
.country-experience #country-page :is(a,button,summary):focus-visible{outline:3px solid #4f46e5;outline-offset:4px}
.country-experience #country-page [id]{scroll-margin-top:90px}
.country-experience #hero-section{background:#fff;animation:none;min-height:0}
.ce-country-hero{max-width:1152px;margin:auto;display:grid;grid-template-columns:1.6fr 1fr;gap:64px;align-items:center}
.country-experience #country-name{font-size:clamp(2.5rem,4.2vw,4rem);font-weight:800;letter-spacing:-.045em;line-height:1.08;margin:0 0 22px;text-wrap:balance;color:var(--ce-ink)}
.ce-country-intro{font-size:17px;line-height:1.75;max-width:640px;margin:0 0 26px;color:var(--ce-muted)}
.ce-country-summary{background:#f3f3ff;border:1px solid #deddf6;border-radius:22px;padding:30px;min-width:0}
.ce-country-summary img{object-fit:contain;border-radius:5px;margin-bottom:22px}.ce-country-summary p{font-size:13px;line-height:1.7;color:var(--ce-muted);margin:0 0 12px}.ce-country-summary strong{display:block;font-size:34px;letter-spacing:-.03em;margin-bottom:12px}.ce-country-summary a{font-size:13px;font-weight:750;color:var(--ce-brand);text-decoration:underline}
.ce-country-section{max-width:1200px;margin:36px auto;padding:0 24px}
.country-experience #country-page .ce-section-head h2,.country-experience #country-setup h2{font-size:clamp(25px,2.5vw,34px);font-weight:800;line-height:1.2;letter-spacing:-.025em;margin-bottom:16px}
.country-experience #country-picker-wrapper{background:transparent;padding:0}.country-experience #country-picker-wrapper>div>.text-center{display:none}.country-experience #best-plans-intro{display:none}
.country-experience #country-picker-wrapper .country-plan-panel{margin-top:0;box-shadow:none;border:1px solid var(--ce-line)}
.country-experience .country-buying-comparison{max-width:1152px;border:1px solid var(--ce-line);border-radius:20px;box-shadow:none}
.country-experience #country-page :is(button,a){overflow-wrap:anywhere}.country-experience #country-page .ce-btn{overflow-wrap:normal}
@media(max-width:700px){.ce-country-hero{grid-template-columns:1fr;gap:24px}.country-experience #country-name{font-size:38px}.ce-country-intro{font-size:15px}.ce-country-summary{padding:22px}.ce-country-summary img{float:right;width:48px;height:36px;margin:0 0 10px 12px}.ce-country-summary strong{font-size:28px}.ce-country-section{padding:0 20px;margin-block:28px}.country-experience .country-buying-comparison{margin-inline:20px;padding:22px}.country-experience #country-picker-wrapper>div{padding-inline:20px}.country-experience #country-picker-wrapper .country-plan-panel{padding:20px}}

.ce-hero-image-fallback{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#eeefff,#d8d9fb)}.ce-hero-image-fallback img{object-fit:contain;filter:drop-shadow(0 10px 15px #4338ca22)}
