body{font-family:Arial,system-ui,sans-serif}button,select,input{outline-offset:3px}button.orange{color:#14284a}.lab{justify-content:space-between;font-size:11px}.preview-switch{display:flex;gap:5px}.hero{padding:52px 0 48px}.hero h1{font-size:54px;max-width:780px;margin:18px 0}.eyebrow{display:inline-block;background:#ffffff25;border-radius:24px;padding:7px 13px;font-size:13px}.home-search{display:grid;grid-template-columns:1fr 1.4fr auto;gap:4px;background:white;border-radius:18px;padding:8px;margin-top:28px;color:var(--ink);max-width:1000px}.home-search>div{padding:10px 18px;border-right:1px solid var(--line)}.home-search small,.home-search strong{display:block}.home-search small{font-size:12px}.home-search strong{margin-top:4px}.home-search select{border:0;background:white;font-weight:bold;width:100%;padding:5px 0}.airport{float:right;color:#8995aa;font-weight:normal}.home-search button{padding:16px 30px}.country-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.country{display:flex;align-items:center;gap:12px;text-align:left;border:1px solid var(--line);background:white;padding:20px;border-radius:16px;color:var(--ink)}.country:hover{border-color:var(--blue);transform:translateY(-2px)}.flag{font-size:27px}.arrow{margin-left:auto;color:var(--blue)}.feature-banner{display:grid;grid-template-columns:1fr 1fr;border-radius:24px;background:#e6f0ff;overflow:hidden;margin:34px 0}.feature-banner>div{padding:32px}.feature-banner img{width:100%;height:100%;max-height:280px;object-fit:cover}.feature-banner small{color:var(--blue);font-weight:bold;letter-spacing:2px}.feature-banner h2{font-size:32px;margin-top:12px}.nasiya{display:flex;align-items:center;gap:24px;padding:30px;background:#ffe9e2;border-radius:22px;margin:26px 0}.nasiya h2{margin:5px 0}.nasiya-symbol{background:var(--orange);color:white;font-size:55px;font-weight:bold;border-radius:22px;padding:4px 25px;transform:rotate(-8deg)}.results-layout{display:grid;grid-template-columns:285px minmax(0,1fr);gap:22px;margin-top:26px}.filter-form{padding:18px}.filter-form .formgrid{grid-template-columns:1fr 1fr;gap:12px}.filter-form label:nth-child(1),.filter-form label:nth-child(2),.filter-form label:nth-child(5){grid-column:1/-1}.filter-form label{font-size:12px}.filter-form input,.filter-form select{width:100%;padding:9px;border:1px solid var(--line);border-radius:10px;color:var(--ink);min-height:42px;background:white;min-width:0}.search-submit{width:100%;margin-top:18px}.calendar{margin-top:20px;font-size:13px}.calendar p{font-size:11px;margin-top:8px}.date-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:5px;max-height:245px;overflow:auto}.date{padding:3px 1px;background:#e6f0ff;color:var(--blue);min-height:44px;font-size:14px;border:1px solid transparent}.date small,.date strong{display:block}.date small{font-size:9px}.date:disabled{background:#f1f2f4;color:#9aa3b0;opacity:1}.date.active{background:var(--blue);color:white}.date.active small{color:white}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--blue)}.dot.gray{background:#afb9c7}.offer{grid-template-columns:190px minmax(0,1fr) 168px}.offer .body{padding:18px}.offer h3{font-size:19px}.offer-price small{font-size:11px}.offer .offer-price{padding:15px}.offer .price{font-size:24px}.offer img{height:100%;min-height:240px}.offer-price button{margin-top:12px;font-size:13px}.roomtext{font-size:12px;margin-top:12px}.card{position:relative}.heart{z-index:1}.grid .card .offer-price{padding:16px}.gallery{display:grid;grid-template-columns:2fr 1fr;gap:12px;margin:24px 0}.gallery>div{display:grid;grid-template-rows:1fr 1fr;gap:12px;max-height:350px}.gallery .detail-hero{height:350px}.gallery>div img{width:100%;height:169px;object-fit:cover;border-radius:16px}.gallery:has(>div:empty){grid-template-columns:1fr}.gallery>div:empty{display:none}.flight-leg{border:1px solid var(--line);border-radius:14px;padding:16px;margin:12px 0}.flight-leg small{display:block}.route{display:flex;justify-content:space-between;align-items:center;margin:12px 0}.route span{color:var(--blue);font-size:12px}.flight-choice{display:flex;gap:8px;align-items:center}.flight-choice>div{flex:1}.flight-choice input{accent-color:var(--blue)}.flight-choice .flight-leg{font-size:12px}.flight-choice .route{gap:8px}.flight-choice .route span{font-size:10px}.sticky{position:fixed;bottom:0;left:0;right:0;z-index:25;background:white;border-top:1px solid var(--line);box-shadow:0 -5px 25px #10204010;display:flex;justify-content:center;align-items:center;gap:24px;padding:14px 24px;flex-wrap:wrap}.sticky strong,.sticky small{display:block}.sticky strong{font-size:25px;color:var(--blue)}.sticky .booking-lock{max-width:290px;font-size:11px}.with-sticky{padding-bottom:155px}.detail-grid{grid-template-columns:minmax(0,1.6fr) minmax(290px,1fr)}.photo-missing{display:grid;place-content:center;background:#e6f0ff;color:var(--blue);min-height:180px}.loading{text-align:center;padding:35px}.orbit{color:var(--blue);font-size:36px;animation:bob 1.5s ease-in-out infinite}.error{background:#ffe9e2;border-left:4px solid var(--orange);margin-top:18px}.review-result{border-color:var(--blue)}.review-result h2{color:var(--blue);margin-top:15px}summary{cursor:pointer;font-weight:bold}details p{margin-top:14px}#splash{position:fixed;inset:0;z-index:200;background:white;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--blue)}#splash img{width:230px;animation:bob 1.2s ease-in-out infinite}#splash p{margin-top:20px}@keyframes bob{50%{transform:translateY(-9px)}}.phone-mode .hero h1{font-size:34px}.phone-mode .home-search{grid-template-columns:1fr}.phone-mode .home-search>div{border:1px solid var(--line);border-radius:12px}.phone-mode .country-grid{grid-template-columns:1fr 1fr}.phone-mode .country{padding:15px 12px;gap:7px;font-size:13px}.phone-mode .country .flag{font-size:23px}.phone-mode .feature-banner{grid-template-columns:1fr}.phone-mode .feature-banner img{height:170px}.phone-mode .feature-banner>div{padding:24px}.phone-mode .results-layout{grid-template-columns:1fr}.phone-mode .gallery{grid-template-columns:1fr}.phone-mode .gallery>div{display:none}.phone-mode .gallery .detail-hero{height:240px}.phone-mode .nasiya{padding:20px;gap:16px}.phone-mode .nasiya-symbol{font-size:38px;padding:6px 15px}.phone-mode .nasiya h2{font-size:21px}.phone-mode .sticky{padding:10px 16px;gap:12px;justify-content:space-between}.phone-mode .booking-lock{max-width:100%;width:100%;font-size:10px}.phone-mode .date-strip{grid-template-columns:repeat(7,1fr);max-height:150px}.phone-mode .lab{font-size:10px}.phone-mode .preview-switch{width:100%;justify-content:center}.phone-mode .results-layout>.aside{width:100%}.phone-mode .offer img{height:210px;min-height:0}.phone-mode .footer{padding-bottom:130px}.phone-mode .detail-grid{grid-template-columns:1fr}.phone-mode .results-layout .formgrid{grid-template-columns:1fr 1fr}
@media(max-width:780px){.hero h1{font-size:36px}.hero{padding:28px 0}.home-search{grid-template-columns:1fr}.home-search>div{border:1px solid var(--line);border-radius:12px}.country-grid{grid-template-columns:1fr 1fr}.country{padding:16px 12px;font-size:13px;gap:6px}.flag{font-size:23px}.feature-banner{grid-template-columns:1fr}.feature-banner img{height:170px}.results-layout{grid-template-columns:1fr}.filter-form .formgrid{grid-template-columns:1fr 1fr}.date-strip{grid-template-columns:repeat(7,1fr);max-height:150px}.gallery,.detail-grid{grid-template-columns:1fr}.gallery>div{display:none}.gallery .detail-hero{height:250px}.sticky{gap:12px;padding:10px 16px;justify-content:space-between}.sticky .booking-lock{width:100%;max-width:100%;font-size:10px}.nasiya{padding:20px;gap:16px}.nasiya h2{font-size:21px}.nasiya-symbol{font-size:38px;padding:6px 15px}.offer{display:block}.offer img{height:220px;min-height:0}.offer .offer-price{border-left:0;border-top:1px solid var(--line);display:flex;flex-direction:row;justify-content:space-between}.preview-switch{display:none}.lab{justify-content:center}.footer{padding-bottom:130px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important}}

.city-cards{display:flex;gap:10px;overflow:auto;margin-bottom:20px}.city-card{text-align:left;background:white;border:1px solid var(--line);min-width:180px;padding:14px}.city-card strong,.city-card small{display:block}.city-card small{font-size:11px;margin-top:6px}.filter-shell{border:0}.filter-shell>summary{padding:15px;background:white;border:1px solid var(--line);border-radius:12px;margin-bottom:10px}.phone-mode .filter-form{margin-bottom:16px}.phone-mode .route strong{max-width:40%;font-size:13px;overflow-wrap:anywhere}.grid .card .offer-price{display:block}.grid .card .offer-price button{width:100%}#app{min-height:100vh}.card img{background:#e6f0ff}.offer .body{min-width:0}.offer h3{overflow-wrap:anywhere}.phone-mode .feature-banner>div{padding:24px}.phone-mode .lab{padding:8px 12px} @media(min-width:781px){body:not(.phone-mode) .filter-shell:not([open])>*:not(summary){display:block}body:not(.phone-mode) .filter-shell>summary{pointer-events:none}}

.country-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.country{min-width:0}.country strong{overflow-wrap:anywhere}.country .flag{flex-shrink:0}@media(min-width:781px) and (max-width:1050px){.country-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.results-layout{grid-template-columns:235px minmax(0,1fr)}.offer{grid-template-columns:1fr}.offer img{height:220px;min-height:0}.offer .offer-price{border-left:0;border-top:1px solid var(--line);display:flex;flex-direction:row;justify-content:space-between}}@media(max-width:780px){.country-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.phone-mode .country-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.discovery-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:24px}.discovery-heading h1{font-size:clamp(28px,4vw,42px);margin:10px 0}.discovery-heading p{color:#66758a}.discovery-scope{display:flex;flex-wrap:wrap;gap:10px;background:#e6f0ff;border-radius:18px;padding:18px;margin-bottom:16px}.discovery-scope span{background:#fff;border-radius:10px;padding:8px 12px;font-weight:600}.discovery-status{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:14px}.discovery .city-cards{margin:26px 0}.city-offers{scroll-margin-top:20px;margin-top:36px}.city-offers .date-strip{margin:16px 0;display:flex;overflow-x:auto;gap:10px;padding-bottom:10px}.city-offers .date{min-width:105px;display:flex;flex-direction:column;gap:8px;color:#0057ff;background:#e6f0ff;border:1px solid #c4d9ff;padding:12px;border-radius:12px}.discovery .city-card small{display:block;margin-top:8px;color:#0057ff}.phone-mode .discovery-heading{display:block}.phone-mode .discovery-heading .primary{width:100%;margin-top:12px}.phone-mode .discovery-status{align-items:flex-start}.phone-mode .discovery-scope{padding:12px;gap:6px}.phone-mode .city-offers .heading{display:block}@media(max-width:650px){.discovery-heading{display:block}.discovery-heading .primary{width:100%;margin-top:12px}.discovery-status{align-items:flex-start}.city-offers .heading{display:block}}

.country-label{min-width:0}.country-label strong,.country-label small{display:block}.country-label small{font-size:11px;font-weight:normal;margin-top:4px}.country-label .country-price{color:var(--blue);font-weight:bold;font-size:14px}

.discovery-party{display:flex;gap:8px;margin:16px 0}.discovery-party button{flex:1}.discovery-party button[aria-pressed="true"]{outline:2px solid var(--blue);outline-offset:2px}

/* Destination cards: one clear price and a direct route into the country's offers. */
.destination-heading{align-items:flex-end;gap:16px;margin-bottom:22px}
.destination-kicker{display:block;color:var(--blue);font-size:10px;font-weight:700;letter-spacing:1.5px;margin-bottom:9px}
.destination-heading h2{font-size:32px;letter-spacing:-.8px;line-height:1.15}
.destination-heading p{font-size:13px;line-height:1.5;color:#66758e;margin:10px 0 0;max-width:360px}
.destination-count{flex-shrink:0;border:1px solid #dce5f3;background:#edf3ff;color:#315183;padding:8px 11px;border-radius:30px;font-size:11px;white-space:nowrap}
.country-grid{gap:12px;align-items:stretch;grid-template-columns:repeat(3,minmax(0,1fr))}
.country.destination-card{display:flex;flex-direction:column;align-items:stretch;gap:8px;padding:15px;border:1px solid #dfe6f1;border-radius:16px;background:#fff;min-width:0;font-weight:400;transition:border-color .18s,box-shadow .18s}
.country.destination-card:hover{border-color:#9cb7ff;box-shadow:0 5px 16px #254ed012;transform:none}
.country.destination-card:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
.destination-main{display:flex;align-items:center;justify-content:space-between;gap:12px}
.destination-top{display:flex;align-items:center;gap:8px;min-width:0}
.destination-top .flag{font-size:25px;line-height:1;flex-shrink:0}
.destination-top strong{font-size:16px;line-height:1.25;overflow-wrap:anywhere}
.destination-price{flex-shrink:0;text-align:right}
.destination-price-label{display:block;font-size:10px;color:#63728b;margin-bottom:2px}
.country.destination-card .country-price{display:block;color:var(--blue);font-size:23px;font-weight:750;line-height:1.12;letter-spacing:-.6px;margin:0;white-space:nowrap;font-variant-numeric:tabular-nums}
.destination-meta{display:flex;align-items:center;flex-wrap:wrap;gap:5px;font-size:11px;color:#50617c;line-height:1.4}
.destination-open{margin-left:auto;color:#284c92}
.destination-status{display:flex;align-items:center;gap:5px;font-size:10px;color:#687891;line-height:1.3}
.destination-status .status-dot{width:5px;height:5px;border-radius:50%;background:#7592b8;flex-shrink:0}
.destination-status.is-stale .status-dot{background:#d89943}
.destination-comparison{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;font-size:11px;color:#21664c;background:#edf8f2;border-radius:7px;padding:6px 8px;text-align:left}
.destination-comparison small{font-size:9px;color:#506b60}
.phone-mode .destination-heading{align-items:flex-start;flex-wrap:wrap;gap:12px}
.phone-mode .destination-heading h2{font-size:29px}
.phone-mode .country-grid{grid-template-columns:1fr;gap:10px}
.phone-mode .country.destination-card{padding:13px 14px;gap:7px;font-size:14px}
@media(max-width:1050px){.country-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.destination-heading{align-items:flex-start;flex-wrap:wrap}.destination-heading h2{font-size:29px}.country-grid{grid-template-columns:1fr;gap:10px}.country.destination-card{padding:13px 14px;gap:7px}}
@media(prefers-reduced-motion:reduce){.country.destination-card{transition:none}}

/* Aksiya emphasis uses a measured comparison, not an invented supplier discount. */
.destination-name{display:flex;flex-direction:column;align-items:flex-start;gap:5px;min-width:0}
.aksiya-wordmark{font-size:9px;letter-spacing:1.2px;font-weight:800;color:#b64219;background:#fff0e7;padding:3px 6px;border-radius:5px;line-height:1}
.destination-price-line{display:flex;align-items:center;justify-content:flex-end;gap:7px}
.aksiya-percent{color:#a43a12;background:#fff0e7;border:1px solid #ffd5be;border-radius:6px;padding:4px 5px;font-size:10px;font-weight:700;white-space:nowrap}
.destination-average{display:flex;align-items:center;justify-content:flex-end;gap:5px;margin-top:3px;color:#788398;font-size:11px}
.destination-average small{font-size:9px;color:#788398}
.destination-open{font-weight:700;color:var(--blue)}
.country.destination-card:hover .destination-open{text-decoration:underline;text-underline-offset:3px}

/* Compact home introduction: the destination cards are the country selector. */
.header-home .wrap,.phone-mode .header-home .wrap{height:58px}
.header-home .logo,.phone-mode .header-home .logo{width:120px;height:48px}
.header-home .nav{gap:8px}
.header-home .nav button{min-height:36px;padding:6px 10px;border-radius:10px;font-size:13px;background:#f2f5fc}
/* A compact route selector keeps search available above the country cards. */
.compact-route{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) 44px;align-items:center;gap:10px;padding:8px 9px 8px 14px;margin:0 0 16px;background:#fff;border:1px solid #e0e7f0;border-radius:14px;box-shadow:0 3px 12px #18305504}
.compact-route small{display:block;font-size:10px;line-height:1.3;color:#6d7b8f;margin-bottom:3px}
.route-origin{border-right:1px solid #e5eaf2;padding-right:10px;min-width:0}
.route-origin strong{display:block;font-size:14px;line-height:22px;color:#172f53}
.route-destination{min-width:0}
.route-destination select{display:block;width:100%;border:0;padding:0 18px 0 0;background:#fff;color:#172f53;font:600 14px/22px Arial,sans-serif;height:22px;border-radius:3px}
.route-submit{display:grid;place-items:center;width:44px;height:44px;min-height:44px;padding:10px;border-radius:11px;background:#2554f4;color:#fff}
.route-submit svg{width:21px;height:21px}.route-submit:hover{background:#1743df}


/* Shared brand navigation; discovery retains its existing treatment. */
.header-home{background:linear-gradient(90deg,#123fe1,#2c60fc);border-bottom:0}
.header-home .wrap,.phone-mode .header-home .wrap{height:66px}
.header-home .logo,.phone-mode .header-home .logo{width:132px;height:52px;filter:brightness(0) invert(1)}
.header-home .brand-logo{position:relative;display:block;width:132px;height:52px;flex-shrink:0}
.header-home .logo-ticket-overlay{position:absolute;inset:0;width:132px;height:52px;object-fit:contain;clip-path:inset(0 53% 0 0);pointer-events:none}
.header-home .nav>a{color:#fff}
.header-home .nav button{background:#ffffff18;color:#fff;border:1px solid #ffffff25;border-radius:11px;min-width:38px;min-height:36px}
.header-home .nav button:hover{background:#ffffff2e}
.header-home a:focus-visible,.header-home button:focus-visible{outline-color:#fff}

/* Approved home concept: one blue surface behind the brand and search. */
.home-view{--blue:#2156b8;--orange:#c64624;--ink:#172b4d;--gray:#526176;--bg:#f4f6fa;--line:#dce3ee;background:var(--bg);color:var(--ink)}
.home-masthead{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(115deg,#2156b8,#2460c6);color:#fff}
.home-masthead::after{content:"";position:absolute;z-index:-1;pointer-events:none;width:260px;height:260px;right:-120px;top:-150px;border:1px solid #ffffff13;border-radius:50%;box-shadow:0 0 0 36px #ffffff06,0 0 0 76px #ffffff04}
.home-masthead .header-home{background:transparent}
.home-hero{position:relative;background:transparent;padding:12px 0 24px}
.home-greeting{display:flex;align-items:center;gap:6px;margin:0 0 6px;color:#f1f5ff;font-size:18px;font-weight:600;line-height:1.3}
.home-greeting span{display:inline-block;font-size:22px;line-height:1;transform-origin:70% 75%;animation:hello-wave 3.6s ease-in-out infinite}
.home-hero h1{max-width:650px;margin:0 0 18px;font-size:40px;line-height:1.12;font-weight:750;letter-spacing:-.8px;color:#fff;text-wrap:balance}
.home-hero .compact-route{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) auto;gap:10px;margin:0;padding:10px 12px;border:1px solid #ffffff70;border-radius:16px;box-shadow:none}
.home-hero .route-origin,.home-hero .route-destination{display:flex;align-items:center;gap:10px;min-width:0}
.home-hero .route-destination>span:last-child,.home-hero .route-origin>div{min-width:0;flex:1}
.home-route-icon{display:flex;flex-shrink:0;color:#2156b8}.home-route-icon svg{height:24px;width:24px}
.home-hero .compact-route small{color:#526176;font-size:11px;margin-bottom:2px}
.home-hero .route-origin strong,.home-hero .route-destination select{color:#172b4d;font-size:15px;font-weight:650}
.home-hero .route-submit{display:flex;align-items:center;justify-content:center;gap:9px;width:auto;padding:0 24px;background:#c64624;color:#fff;font-size:15px;white-space:nowrap;border-radius:11px;box-shadow:0 2px 3px #99401f0c}
.home-hero .route-submit:hover{background:#ab381c}.home-hero .route-submit svg{width:20px;height:20px}
.home-hero .route-submit:focus-visible{outline-color:#172b4d;outline-offset:3px}
.home-content,.phone-mode .home-content{padding-top:18px}
.home-destinations-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:4px}
.home-destinations-heading h2{font-size:23px;line-height:1.2;letter-spacing:-.5px;margin:0}
.home-destinations-heading>span{font-size:11px;color:#526176;white-space:nowrap}
.home-destinations-scope{margin:0 0 8px;color:#526176;font-size:12px;line-height:1.4}
.home-savings-legend{display:flex;align-items:center;gap:6px;margin:0 0 10px;font-size:11px;line-height:1.4;color:#526176}
.home-savings-legend svg{flex-shrink:0;width:25px;height:18px}
.home-view .bottomnav{border-color:#dce3ee;box-shadow:0 -2px 12px #172b4d04;padding:9px 0 12px}
.home-view .bottomnav a{color:#526176;line-height:1.3}.home-view .bottomnav a[aria-current="page"]{color:#2156b8;font-weight:600}
.home-view .bottomnav a>span{display:flex;justify-content:center;margin-bottom:4px}
.home-view .bottomnav svg{width:23px;height:23px}
.home-view .bottomnav a[aria-current="page"][data-nav="home"] svg{fill:currentColor}
.phone-mode .home-masthead .header-home .wrap{height:62px}
.phone-mode .home-hero{padding:8px 0 16px}
.phone-mode .home-hero h1{font-size:29px;max-width:330px;margin-bottom:14px;line-height:1.12}
.phone-mode .home-hero .compact-route{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:9px 10px;padding:10px;border-radius:15px}
.phone-mode .home-hero .route-origin,.phone-mode .home-hero .route-destination{gap:8px}
.phone-mode .home-hero .route-submit{grid-column:1/-1;height:42px;min-height:42px}
.phone-mode .home-route-icon svg{width:21px;height:21px}
@media(max-width:600px){
 .home-masthead .header-home .wrap{height:62px}.home-hero{padding:8px 0 16px}
 .home-hero h1{font-size:29px;max-width:330px;margin-bottom:14px;line-height:1.12}
 .home-hero .compact-route{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:9px 10px;padding:10px;border-radius:15px}
 .home-hero .route-origin,.home-hero .route-destination{gap:8px}.home-route-icon svg{width:21px;height:21px}
 .home-hero .route-submit{grid-column:1/-1;height:42px;min-height:42px}
}
@media(max-width:360px){.home-hero .route-origin,.home-hero .route-destination{gap:5px}.home-route-icon svg{width:18px;height:18px}.home-hero .route-origin strong,.home-hero .route-destination select{font-size:13px}.home-destinations-heading h2{font-size:21px}.home-destinations-heading>span{font-size:10px}}
@keyframes hello-wave{0%,55%,100%{transform:rotate(0deg)}8%{transform:rotate(18deg)}16%{transform:rotate(-10deg)}24%{transform:rotate(18deg)}32%{transform:rotate(-7deg)}40%{transform:rotate(12deg)}48%{transform:rotate(0deg)}}
@media(prefers-reduced-motion:reduce){.home-greeting span{animation:none}}

/* Country discovery: route summary, cached price calendar, then hotel offers. */
.country-intro{background:linear-gradient(90deg,#123fe1,#2c60fc);color:#fff;padding:0 0 21px}
.country-back{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:14px}
.country-back button{min-height:34px;padding:5px 0;color:#fff;font-size:11px;background:transparent}
.country-back .country-customize{padding:6px 10px;border:1px solid #ffffff40;border-radius:9px;background:#ffffff12}
.country-title-row{display:flex;justify-content:space-between;align-items:flex-end;gap:14px}
.country-title-row p{font-size:10px;letter-spacing:.6px;color:#d7e2ff;margin:0 0 6px}
.country-title-row h1{font-size:32px;letter-spacing:-.7px;margin:0;line-height:1.15;color:#fff}
.country-title-row h1 span{font-size:26px}.country-from{text-align:right;white-space:nowrap}.country-from small{display:block;color:#d7e2ff;font-size:10px}.country-from strong{display:block;font-size:26px;line-height:1.2;letter-spacing:-.8px}
.discovery-redesign{padding-top:17px;padding-bottom:36px}
.traveler-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.traveler-controls>span{font-size:13px;font-weight:700}
.discovery-redesign .discovery-party{display:flex;gap:3px;margin:0;padding:3px;background:#e8edf8;border-radius:11px}
.discovery-redesign .discovery-party button{min-height:34px;padding:6px 12px;font-size:12px;border-radius:8px;color:#5b6b85;background:transparent;box-shadow:none}
.discovery-redesign .discovery-party button.primary{color:#204de5;background:#fff;box-shadow:0 2px 5px #182d6410}
.calendar-city-tabs{display:flex;gap:7px;overflow-x:auto;padding:0 0 3px;margin-bottom:12px;scrollbar-width:thin}
.calendar-city-tabs button{flex-shrink:0;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;min-height:43px;border:1px solid #e0e6f1;background:#fff;padding:7px 12px;border-radius:11px;font-size:12px;color:#536781;line-height:1.25}
.calendar-city-tabs button small{font-size:10px;margin-top:3px;color:inherit;font-weight:400}
.calendar-city-tabs button[aria-pressed=true]{border-color:#2554f4;background:#edf2ff;color:#204de5}
.price-calendar{background:#fff;border:1px solid #e1e7f1;border-radius:16px;padding:12px 14px;box-shadow:0 5px 20px #17306204}
.calendar-title{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:3px}.calendar-title h2{font-size:18px;line-height:1.2;letter-spacing:-.4px;margin:0}
.calendar-context{display:flex;align-items:baseline;justify-content:space-between;gap:8px;color:#7b8ca3;font-size:10px;line-height:15px;margin-bottom:10px}.calendar-context>span:last-child{white-space:nowrap;font-variant-numeric:tabular-nums}
.calendar-month{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.calendar-month h3{font-size:14px;text-transform:capitalize;margin:0}.calendar-month button{width:28px;min-height:28px;height:28px;padding:0;border-radius:8px;font-size:23px;line-height:1;color:#2852e7;background:#f0f4fe}
.price-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}
.calendar-weekday{text-align:center;color:#91a0b3;font-size:10px;padding:3px 0 5px}
.calendar-day{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-width:0;min-height:46px;padding:5px 1px;background:#f0f4ff;color:#244bc4;border:1px solid transparent;border-radius:9px;font-variant-numeric:tabular-nums}
.calendar-day>span{font-size:12px;line-height:1;font-weight:600}.calendar-day strong{font-size:10px;line-height:1.1;white-space:nowrap;letter-spacing:-.3px;font-weight:700}
.calendar-day:disabled{opacity:1;background:#f8f9fc;color:#bac3d1}.calendar-day.outside-range{background:transparent;color:#d3d9e2}.calendar-day.calendar-lowest{color:#a83b14;background:#fff0e6;border-color:#ffd0b5}.calendar-day.is-selected{background:#2554f4;color:#fff;border-color:#2554f4;box-shadow:0 3px 8px #2554f42b}
.calendar-legend{display:flex;gap:12px;flex-wrap:wrap;font-size:9px;color:#8090a6;margin:8px 0 5px}.calendar-legend span{display:flex;align-items:center;gap:4px}.calendar-legend i{width:7px;height:7px;background:#ed713b;border-radius:50%}.calendar-note{font-size:10px;line-height:1.5;color:#8290a3;margin:0}
.calendar-selection{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid #eef1f7}.calendar-selection span{display:block;font-size:11px;color:#72819a}.calendar-selection strong{display:block;font-size:21px;color:#204de5;margin-top:3px}.calendar-selection button{min-height:39px;font-size:11px;padding:8px 12px;border-radius:10px}
.discovery-info{border:0;padding:13px 2px;margin:0 0 14px;color:#78879d;font-size:11px}.discovery-info summary{font-weight:500}.discovery-info p{margin:12px 0;font-size:11px}.discovery-info .discovery-status{font-size:10px}.discovery-info .discovery-status button{font-size:11px;padding:5px 9px;min-height:32px}.discovery-info .panel{padding:10px;margin:10px 0}.discovery-info .date-strip{max-height:200px;overflow:auto}
.discovery-offers-heading{display:flex;justify-content:space-between;align-items:baseline;gap:8px;margin:6px 0 14px}.discovery-offers-heading h2{margin:0;font-size:21px;letter-spacing:-.5px}.discovery-offers-heading>span{font-size:10px;color:#8794a8}
.discovery-redesign .city-offers{margin-top:14px}.discovery-redesign .city-offers>.heading{display:flex;align-items:center;justify-content:space-between;margin:0 0 10px}.discovery-redesign .city-offers h3{margin:0;font-size:16px}.discovery-redesign .city-offers>.heading small{color:#2554f4;font-size:12px}
.discovery-redesign .offer{border-radius:16px;box-shadow:0 3px 14px #18305505}.discovery-redesign .offer .body{padding:14px}.discovery-redesign .offer h3{font-size:17px}.discovery-redesign .offer .chips{margin-top:8px;gap:5px}.discovery-redesign .offer .chip{font-size:10px;padding:4px 7px}.discovery-redesign .offer .roomtext{font-size:11px;margin:8px 0}.discovery-redesign .offer .body>small{font-size:10px;margin:4px 0}.discovery-redesign .offer .offer-price{padding:13px 14px}.discovery-redesign .offer .offer-price small{font-size:9px;margin:0}.discovery-redesign .offer .price{font-size:25px}.discovery-redesign .offer .offer-price button{font-size:12px;padding:10px 14px;min-height:40px}
.phone-mode .discovery-redesign .offer img{height:155px}.phone-mode .country-title-row h1{font-size:28px}.phone-mode .country-from strong{font-size:24px}
@media(min-width:781px){body:not(.phone-mode) .discovery-redesign .price-calendar{max-width:760px;margin:0 auto}body:not(.phone-mode) .calendar-day{min-height:74px}body:not(.phone-mode) .calendar-day strong{font-size:13px}}
@media(max-width:380px){.price-calendar{padding:12px}.price-calendar-grid{gap:3px}.calendar-day strong{font-size:9px}.calendar-selection button{padding:8px}.country-title-row h1{font-size:26px}.country-from strong{font-size:22px}.traveler-controls{gap:6px}.discovery-redesign .discovery-party button{padding:6px 9px}}
.discovery-redesign .discovery-party button{white-space:nowrap;flex:none}
.discovery-redesign .discovery-party button[aria-pressed=true]{outline:none}
.discovery-redesign .discovery-party button:focus-visible{outline:2px solid #2554f4;outline-offset:2px}
.phone-mode .discovery-redesign{padding-top:16px;padding-bottom:36px}

/* App country pages use a prefilled route instead of the website masthead. */
.app-view .header-inner,.app-view .discovery-web-heading{display:none}
.discovery-app-route{background:#fff;border-bottom:1px solid #e5eaf3;padding:12px 0 15px}
.app-route-top{display:flex;gap:10px;align-items:center;margin-bottom:13px}
.app-route-top .app-back{padding:0;width:35px;height:35px;min-height:35px;font-size:22px;background:#f1f4fa;color:#26436e;border-radius:10px}
.phone-mode .app-route-top h1{font-size:19px;line-height:1.25;letter-spacing:-.35px;margin:0}
.app-route-fields{display:grid;grid-template-columns:1fr 1.2fr;background:#f5f7fb;border:1px solid #e6ebf3;border-radius:13px;padding:10px 12px;gap:12px}
.app-route-fields>div{border-right:1px solid #dee5f0}.app-route-fields small{display:block;font-size:10px;color:#8290a4;margin-bottom:3px}.app-route-fields strong{font-size:15px;color:#19345b;line-height:24px}
.app-route-fields label{min-width:0}.app-route-fields select{font:600 15px Arial,sans-serif;color:#19345b;width:100%;height:24px;background:transparent;border:0;padding:0 16px 0 0}
.app-route-options{display:flex;gap:7px;align-items:center;margin:11px 0 14px}.app-route-options button{display:flex;align-items:center;gap:6px;border:1px solid #dfe6f1;background:#fff;color:#35537a;min-height:36px;padding:7px 10px;font-size:11px;border-radius:9px}
.app-route-options svg{width:15px;height:15px}.app-route-nights{font-size:11px;color:#8491a6;margin-left:auto;white-space:nowrap}
.discovery-app-route .traveler-controls{margin:0}.discovery-app-route .discovery-party{display:flex;gap:3px;margin:0;padding:3px;background:#edf1f8;border-radius:10px}.discovery-app-route .discovery-party button{white-space:nowrap;flex:none;min-height:32px;padding:6px 11px;border-radius:8px;font-size:11px;color:#63758f;background:transparent}.discovery-app-route .discovery-party button.primary{background:#2554f4;color:#fff;outline:none}.discovery-app-route .discovery-party button:focus-visible{outline:2px solid #ff5a3c;outline-offset:2px}
.price-calendar{scroll-margin-top:12px}
.chosen-date-summary{background:#fff;border:1px solid #dce5fa;border-radius:13px;padding:12px 14px;margin:0 0 13px}.chosen-date-summary small{display:block;font-size:9px;color:#8a97aa;margin-top:3px}.price-calendar+.chosen-date-summary{margin-top:12px}
.app-route-options button[aria-expanded=true]{background:#edf2ff;border-color:#2554f4;color:#2554f4}

/* Unified app search card: route, date and travelers, then advanced filters. */
.discovery-app-route.route-refined{background:linear-gradient(180deg,#fff 0%,#f3f6fc 100%);border-bottom:0;padding:12px 0 3px}
.route-refined .app-route-top{margin-bottom:12px;gap:11px}.route-refined .app-back{background:white;border:1px solid #e4eaf4;color:#254bd4}
.trip-filter-card{background:white;border:1px solid #e0e7f3;border-radius:19px;box-shadow:0 6px 22px #25477d08;overflow:hidden}
.trip-route-row{display:grid;grid-template-columns:minmax(0,1fr) 24px minmax(0,1.2fr);gap:10px;align-items:center;padding:15px 16px;border-bottom:1px solid #edf1f7}
.trip-route-row small,.trip-choice small{display:block;color:#8492a7;font-size:10px;font-weight:400;line-height:1.3;margin-bottom:4px}
.trip-route-row strong{font-size:18px;line-height:25px;letter-spacing:-.45px;color:#172f53}.trip-route-arrow{color:#90a4d4;font-size:20px;text-align:center}
.trip-destination{min-width:0}.trip-destination select{width:100%;background:transparent;border:0;color:#172f53;font:700 18px/25px Arial,sans-serif;padding:0 15px 0 0;height:25px;letter-spacing:-.45px}
.trip-choice-row{display:grid;grid-template-columns:1fr 1fr;gap:0;padding:13px 12px}
.trip-choice{display:flex;align-items:center;gap:9px;background:transparent;color:#253c61;border:0;border-radius:9px;padding:3px 4px;min-height:44px;min-width:0;text-align:left;font-weight:600}
.trip-choice+.trip-choice{padding-left:12px;border-left:1px solid #e9edf5;border-radius:0}
.trip-choice-icon{width:31px;height:34px;display:grid;place-items:center;background:#f0f4ff;color:#3a61e6;border-radius:9px;flex-shrink:0}
.trip-choice-icon svg{width:17px;height:17px}.trip-choice strong{font-size:12px;white-space:nowrap;line-height:18px;color:#253c61}
.trip-travelers{min-width:0;flex:1}.trip-travelers select{font:600 12px/18px Arial,sans-serif;height:20px;padding:0 12px 0 0;border:0;width:100%;background:transparent;color:#253c61}
.trip-date[aria-expanded=true]{background:#f2f5ff}.trip-date[aria-expanded=true] .trip-choice-icon{background:#2554f4;color:#fff}
.trip-filter-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:7px 15px;background:#fafbfe;border-top:1px solid #edf1f7}
.trip-filter-footer>span{display:flex;gap:6px;align-items:center;font-size:11px;color:#8391a7}.trip-filter-footer svg{width:15px;height:15px}
.trip-filter-footer button{display:flex;align-items:center;gap:7px;min-height:30px;padding:4px 0;background:transparent;color:#2452e6;font-size:12px;border-radius:5px}.trip-filter-footer button>span{font-size:19px;margin-left:3px}
@media(max-width:360px){.trip-route-row{padding:13px;gap:7px}.trip-choice-row{padding:11px 8px}.trip-choice{gap:5px}.trip-choice+.trip-choice{padding-left:8px}.trip-choice-icon{width:26px}.trip-choice strong,.trip-travelers select{font-size:11px}}

/* Country overview carousels and a separate city offers page. */
.country-cities-title{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:1px 0 20px}.country-cities-title h2{margin:0;font-size:21px;letter-spacing:-.5px}.country-cities-title>span{font-size:10px;color:#8796aa}
.city-showcase{margin:0 0 27px}.city-showcase-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:7px}.city-showcase-heading h2{font-size:20px;margin:0 0 4px;line-height:1.2;letter-spacing:-.4px}.city-showcase-heading p{font-size:11px;color:#7a89a0;margin:0}.city-showcase-heading p strong{font-size:16px;color:#2554f4;font-weight:750}.city-showcase-heading p>span{font-size:10px}.city-showcase-heading>button{background:transparent;color:#2853e7;padding:5px 0;min-height:35px;font-size:11px;white-space:nowrap;display:flex;align-items:center;gap:5px}
.city-showcase-subtitle{display:flex;justify-content:space-between;align-items:center;font-size:10px;color:#8b98aa;margin-bottom:10px;min-height:26px}.city-carousel-arrows{display:flex;gap:5px}.city-carousel-arrows button{width:26px;height:26px;min-height:26px;padding:0;background:#fff;border:1px solid #e0e7f3;color:#3156d8;font-size:20px;border-radius:8px}
.city-hotel-carousel{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;padding:0 1px 8px;overscroll-behavior-x:contain}
.city-hotel-carousel>.card{flex:0 0 238px;min-width:0;position:relative;scroll-snap-align:start;border-radius:15px;box-shadow:0 3px 14px #19366605;display:flex;flex-direction:column}
.city-hotel-carousel>.card img{height:132px;object-fit:cover}.city-hotel-carousel .photo-missing{height:132px;min-height:132px;font-size:13px}.city-hotel-carousel .body{padding:11px 12px 5px!important;flex:1}.city-hotel-carousel .body h3{font-size:14px!important;line-height:1.3;margin:4px 0 5px;letter-spacing:-.15px}.city-hotel-carousel .body>small{font-size:9px;margin-bottom:5px}.city-hotel-carousel .body>small:last-child{display:none}.city-hotel-carousel .stars{font-size:12px}.city-hotel-carousel .chips{gap:4px;margin-top:8px}.city-hotel-carousel .chip{font-size:9px;padding:3px 5px}.city-hotel-carousel .roomtext{font-size:10px;margin:6px 0;color:#8a96a8}
.city-hotel-carousel .offer-price{padding:8px 12px 12px;border-top:1px solid #eef2f8}.city-hotel-carousel .offer-price small{font-size:8px;margin:0}.city-hotel-carousel .offer-price .price{font-size:24px;margin:1px 0;line-height:1.2}.city-hotel-carousel .offer-price button{width:100%;min-height:34px;margin-top:9px;font-size:11px;border-radius:9px;padding:7px 10px}.city-hotel-carousel .heart{width:30px;height:30px;min-height:30px;border-radius:9px;right:8px;top:8px;padding:3px;font-size:17px}
.city-scope-label{display:flex;justify-content:space-between;align-items:center;margin:0 0 14px;color:#7c8ca5;font-size:11px}.city-scope-label button{min-height:30px;padding:3px 0;background:transparent;font-size:11px;color:#2554f4}.trip-city-destination{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:25px;padding:0;background:transparent;border-radius:3px;font-size:18px;line-height:25px;letter-spacing:-.45px;color:#172f53;text-align:left}.trip-city-destination span{font-size:14px;color:#778ba7}
.city-showcase-full{margin-top:16px}.city-showcase-full .city-showcase-subtitle{line-height:1.5;margin-bottom:12px}.city-showcase-full .offer{margin-bottom:14px}
@media(min-width:781px){body:not(.phone-mode) .city-hotel-carousel>.card{flex-basis:285px}}

/* Compact city shelves: show each price on its hotel, without duplicate minimum cards. */
.date-search-inline{border:0;border-radius:0;background:transparent;box-shadow:none;margin:0 0 12px;padding:0;gap:8px}.date-search-inline span{font-size:11px;color:#6c7f9a}.date-search-inline button{min-height:32px;padding:6px 11px;font-size:11px;border-radius:8px}
.country-cities-title{display:none}
.city-showcase{margin-bottom:19px}.city-showcase-heading{margin-bottom:2px;min-height:29px}.city-showcase-heading h2{font-size:19px;margin:0}.city-showcase-heading>button{min-height:29px;padding:3px 0}.city-showcase-subtitle{margin-bottom:7px;min-height:23px}.city-carousel-arrows button{width:23px;height:23px;min-height:23px}
.city-hotel-carousel{gap:10px;padding-bottom:4px}.city-hotel-carousel>.card{flex-basis:224px}.city-hotel-carousel>.card img,.city-hotel-carousel .photo-missing{height:110px;min-height:110px}.city-hotel-carousel .body{padding:9px 10px 5px!important}.city-hotel-carousel .body h3{font-size:13px!important;margin:3px 0 4px}.city-hotel-carousel .roomtext{display:none}.city-hotel-carousel .chips{margin-top:6px}.city-hotel-carousel .offer-price{padding:8px 10px 10px}.city-hotel-carousel .offer-price .price{font-size:24px}.city-hotel-carousel .offer-price button{margin-top:0;min-height:32px;font-size:10px;padding:6px 8px}.city-hotel-carousel .offer-price>div>small:last-child{display:none}
.route-refined .trip-route-row{padding:12px 14px}.route-refined .trip-choice-row{padding:10px}.route-refined .trip-filter-footer{padding:5px 13px}.route-refined .app-route-top{margin-bottom:10px}.app-view .discovery-redesign{padding-top:13px}

/* Keep the next city visible: navigation belongs inside the compact filter. */
.trip-filter-integrated{display:grid;grid-template-columns:36px minmax(0,1fr)}
.trip-filter-integrated .trip-back{grid-column:1;grid-row:1/3;align-self:stretch;border-radius:0;border-right:1px solid #edf1f7;background:#f8faff;color:#3156d8;padding:0;font-size:23px;min-height:44px}
.trip-filter-integrated .trip-route-row,.trip-filter-integrated .trip-choice-row{grid-column:2;padding:8px 10px;gap:7px}
.trip-filter-integrated .trip-filter-footer{grid-column:1/-1;padding:2px 11px}
.trip-filter-integrated .trip-route-row strong,.trip-filter-integrated .trip-destination select{font-size:16px;line-height:22px;height:22px}
.trip-filter-integrated .trip-choice{gap:6px;padding:2px 0;min-height:40px}
.trip-filter-integrated .trip-choice+.trip-choice{padding-left:8px}
.trip-filter-integrated .trip-choice-icon{width:23px;height:29px;background:transparent}
.trip-filter-integrated .trip-choice small{font-size:9px;margin-bottom:2px}
.trip-filter-integrated .trip-choice strong,.trip-filter-integrated .trip-travelers select{font-size:11px}
.discovery-app-route.route-refined{padding-top:8px}
.app-view .discovery-redesign{padding-top:8px}
.app-view .city-showcase:not(.city-showcase-full){margin-bottom:12px}
.app-view .city-showcase-heading{min-height:27px}
.app-view .city-showcase-subtitle{margin-bottom:4px;min-height:21px}
.app-view .city-hotel-carousel>.card img,.app-view .city-hotel-carousel .photo-missing{height:86px;min-height:86px}
.app-view .city-hotel-carousel .body{padding:6px 9px 4px!important}
.app-view .city-hotel-carousel .body h3{margin:1px 0 3px;line-height:1.25}
.app-view .city-hotel-carousel .chips{margin-top:4px}
.app-view .city-hotel-carousel .offer-price{padding:5px 9px 7px}
.app-view .city-hotel-carousel .stars{font-size:11px;line-height:1}



/* Compact navigation and independent controls, without a table-like grid. */
.discovery-toolbar{background:#fff;padding:10px 16px 12px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;box-shadow:0 3px 12px #28477805}
.toolbar-route{display:flex;align-items:center;gap:10px;margin-bottom:10px}
.toolbar-back{flex:0 0 28px;width:28px;min-height:36px;padding:0;background:transparent;color:#244dca;display:grid;place-items:center}
.toolbar-back svg{width:23px;height:23px}
.toolbar-heading{min-width:0;flex:1}
.toolbar-journey{display:flex;align-items:center;gap:9px;color:#203457;font-size:17px;font-weight:650;letter-spacing:-.4px}
.toolbar-flight{color:#7b98d9;font-weight:400}
.toolbar-destination{min-width:0;max-width:62%;border:0;background:transparent;color:#234ed2;font:inherit;letter-spacing:inherit;padding:0 3px 0 0;min-height:25px;height:25px;border-radius:3px;text-align:left}
.toolbar-heading p{font-size:11px;color:#8190a7;margin:1px 0 0;line-height:16px}
.toolbar-options{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr) 40px;gap:7px}
.toolbar-option{display:flex;align-items:center;gap:7px;min-width:0;min-height:38px;padding:8px 10px;border-radius:12px;background:#f0f4ff;color:#36517b;font:550 12px/18px -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;white-space:nowrap}
.toolbar-option svg{width:17px;height:17px;flex-shrink:0;color:#3d67df}
.toolbar-option select{width:100%;min-width:0;border:0;background:transparent;color:inherit;font:inherit;padding:0;height:21px}
.toolbar-filter{display:grid;place-items:center;min-height:38px;padding:0;border-radius:12px;background:#2554ed;color:white;box-shadow:0 3px 7px #2554ed20}
.toolbar-filter svg{width:19px;height:19px}
.toolbar-date[aria-expanded=true]{background:#dfe8ff;color:#234ed2}
@media(max-width:360px){.discovery-toolbar{padding-left:12px;padding-right:12px}.toolbar-journey{font-size:15px;gap:6px}.toolbar-options{gap:5px}.toolbar-option{font-size:11px;padding:7px;gap:5px}}

/* Light blue frame around the approved compact toolbar. */
.discovery-toolbar{background:#f4f8ff;box-shadow:inset 0 0 0 1px #d3e3fc;border-radius:0 0 14px 14px}
.toolbar-option{background:#fff;box-shadow:inset 0 0 0 1px #e1eafa}

/* Balance the route around the center while keeping back navigation on the left. */
.toolbar-route{position:relative;justify-content:center;padding:0 34px}
.toolbar-route .toolbar-back{position:absolute;left:0;top:50%;transform:translateY(-50%)}
.toolbar-heading{text-align:center;flex:0 1 auto;max-width:100%}
.toolbar-journey{justify-content:center}
.toolbar-destination{field-sizing:content;max-width:62%}

/* Passenger counts remain directly accessible, outside the advanced filters. */
.toolbar-options{grid-template-columns:minmax(0,1fr) 40px}
.toolbar-steppers{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:8px}
.traveler-step{display:flex;align-items:center;gap:5px;min-width:0;font-size:11px;color:#536989}
.traveler-step>span{flex:1}.traveler-step strong{min-width:13px;text-align:center;font-size:13px;color:#203457}
.traveler-step button{display:grid;place-items:center;width:28px;min-height:28px;padding:0;border-radius:9px;background:#e4ecff;color:#2554ed;font-size:18px;font-weight:500}
.traveler-step button:disabled{opacity:.35}
.toolbar-child-ages{display:flex;flex-wrap:wrap;gap:8px;margin-top:9px}.toolbar-child-ages label{flex:1;min-width:85px;font-size:10px;color:#7083a3}
.toolbar-child-ages select{display:block;width:100%;height:32px;border:1px solid #dce6f8;border-radius:8px;background:white;color:#284878;font-size:12px;padding:3px 6px}
.custom-party-search{font-size:13px;color:#526885}.custom-party-search label{display:block}.custom-party-search input{display:block;width:100%;margin:6px 0 12px;padding:10px;border:1px solid #d9e4f6;border-radius:10px;background:white}.custom-party-search>button{width:100%}

/* Passenger steppers open from the compact travelers pill. */
.discovery-toolbar{position:relative}
.toolbar-options{grid-template-columns:minmax(0,1.05fr) minmax(0,1.1fr) 40px}
.toolbar-party>span:first-of-type{overflow:hidden;text-overflow:ellipsis;flex:1;text-align:left}
.traveler-dismiss{position:fixed;inset:0;width:100%;height:100%;border:0;border-radius:0;background:transparent;z-index:39;cursor:default}
.traveler-popover{position:absolute;top:calc(100% - 6px);right:16px;width:min(310px,calc(100% - 32px));padding:14px;border:1px solid #dbe6fa;border-radius:17px;background:white;box-shadow:0 12px 36px #15376726;z-index:40;text-align:left}
.traveler-popover-title{display:flex;align-items:center;justify-content:space-between;color:#203457;font-size:15px}
.traveler-popover-title button{width:28px;min-height:28px;padding:0;background:transparent;color:#7d8da7;font-size:22px}
.traveler-popover .toolbar-steppers{grid-template-columns:1fr;gap:12px;margin:12px 0}
.traveler-popover .traveler-step{font-size:13px;gap:12px}.traveler-popover .traveler-step button{width:32px;min-height:32px}
.traveler-done{width:100%;min-height:35px;margin-top:12px;padding:7px;background:#2554ed;color:white;font-size:12px}

/* Define the approved filter with a clearer blue outline, without adding height. */
.discovery-toolbar{background:#fff;border-radius:16px;box-shadow:inset 0 0 0 5px #91b5f6,0 4px 12px #2454bb0a}
.toolbar-option{background:#f3f7ff;box-shadow:inset 0 0 0 1px #e0e9fb}

.toolbar-search{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:36px;padding:7px 12px;margin-top:8px;border-radius:11px;background:#2554ed;color:white;font:600 13px/20px -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.toolbar-search>span{font-size:17px}

.toolbar-search{background:#fc542c;color:#fff}.toolbar-search:hover{background:#f34820}

/* White filter inset 5% on each side in the logo-blue frame. */
.discovery-toolbar-frame{padding:8px 5% 5%;background:#0053fc;border-radius:0 0 20px 20px}
.discovery-toolbar-frame .discovery-toolbar{padding:10px 10px 12px;background:white;border-radius:14px;box-shadow:none}
.discovery-toolbar-frame .toolbar-route{padding:0 26px}
.discovery-toolbar-frame .toolbar-option{padding-left:8px;padding-right:8px;gap:5px}

.toolbar-destination{color:#20242c}

.toolbar-country-flag{font-size:19px;line-height:1;flex-shrink:0;margin-left:-3px}

/* Hotel photos use the space recovered from the removed shelf subtitle. */
.city-carousel-stage{position:relative;margin-top:6px}
.city-carousel-edge{position:absolute;top:50%;transform:translateY(-50%);z-index:2;display:grid;place-items:center;width:30px;height:36px;min-height:36px;padding:0;border:1px solid #dce5f5;border-radius:11px;background:#ffffffed;color:#2554ed;box-shadow:0 3px 12px #17335a20;font-size:27px;font-weight:400;line-height:1}
.city-carousel-edge.is-prev{left:-9px}.city-carousel-edge.is-next{right:-9px}.city-carousel-edge[hidden]{display:none}
.city-hotel-carousel{scrollbar-width:none}.city-hotel-carousel::-webkit-scrollbar{display:none}
.app-view .city-hotel-carousel>.card img,.app-view .city-hotel-carousel .photo-missing{height:116px;min-height:116px}

/* Rounded, consistent navigation for city shelves. */
.city-carousel-edge{width:32px;height:32px;min-height:32px;border-radius:50%;border:1px solid #e2e9f4;background:#fff;color:#254fc9;box-shadow:0 2px 8px #1637631a}
.city-carousel-edge svg{width:17px;height:17px}.city-carousel-edge.is-prev{left:-10px}.city-carousel-edge.is-next{right:-10px}
.city-showcase-heading>button{display:inline-flex;align-items:center;gap:6px;min-height:29px;padding:5px 10px;border-radius:20px;background:#eaf0ff;color:#3157c9;font:600 11px/18px -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.city-showcase-heading>button svg{width:14px;height:14px}.city-showcase-heading>button:hover{background:#dfe9ff}

.city-showcase-heading h2{display:flex;align-items:center;gap:8px}
.city-emblem{display:inline-grid;place-items:center;width:29px;height:29px;border-radius:9px;flex-shrink:0;background:#e9f0ff;color:#3667d5}
.city-emblem svg{width:19px;height:19px}.city-emblem-palm{background:#e5f5ef;color:#21866d}.city-emblem-skyline{background:#eeebff;color:#7460bc}.city-emblem-sun{background:#fff0e3;color:#bd762b}.city-emblem-mountain{background:#e9f2ef;color:#4c8973}.city-emblem-landmark{background:#f2eafa;color:#8964a6}

.toolbar-quick-filters{display:grid;grid-template-columns:1.1fr 1fr;gap:8px;margin-top:8px;text-align:left}
.toolbar-quick-filters>label,.toolbar-nights{padding:6px 9px;background:#f3f7ff;border:1px solid #e0e9fb;border-radius:11px;min-width:0}
.toolbar-quick-filters>label>span,.toolbar-nights>span{display:block;color:#7585a0;font-size:10px;line-height:14px;margin-bottom:2px}
.toolbar-quick-filters select{border:0;background:transparent;color:#324e79;font:600 11px/18px -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;height:22px;padding:0;width:100%;min-width:0}
.toolbar-nights>div{display:flex;align-items:center;gap:7px;color:#8a9bb5}.toolbar-nights select{flex:1}

/* Match the compact date/party row: one line, icons beside values. */
.toolbar-quick-filters{margin-top:6px}
.toolbar-quick-filters>label,.toolbar-nights{display:flex;align-items:center;gap:6px;height:38px;padding:7px 9px}
.toolbar-quick-filters>label>.quick-filter-icon,.toolbar-nights>.quick-filter-icon{display:block;flex-shrink:0;font-size:17px;line-height:20px;color:#3d67df;margin:0}
.toolbar-quick-filters select{height:22px;font-size:11px}
.toolbar-nights>div{flex:1;min-width:0;gap:4px}

.toolbar-quick-filters>.toolbar-option{width:100%;height:38px;min-width:0;font-size:11px;gap:6px;padding:7px 9px;text-align:left}
.quick-filter-icon{color:#3d67df;font-size:17px;flex-shrink:0}.quick-chevron{margin-left:auto;color:#8193af}.toolbar-quick-filters>.toolbar-option>span:nth-child(2){overflow:hidden;text-overflow:ellipsis}
.quick-filter-popover{position:absolute;top:calc(100% - 6px);left:10px;right:10px;padding:15px;border:1px solid #dbe6fa;border-radius:17px;background:white;box-shadow:0 12px 36px #15376726;z-index:40;text-align:left}
.star-choices{display:grid;gap:5px;margin-top:10px;max-height:280px;overflow:auto}.star-choice{display:flex;align-items:center;gap:9px;text-align:left;background:#f6f8fc;border:1px solid transparent;border-radius:10px;min-height:36px;padding:7px 10px;font-size:12px;color:#48617f}.star-choice.is-selected{background:#eef3ff;border-color:#c9d8ff;color:#2554ed}.star-choice-stars{letter-spacing:2px;color:#df9b30}.star-choice small{font-size:10px;color:#8190a8}.star-choice-check{margin-left:auto;color:#2554ed}
.nights-range-values{display:flex;justify-content:space-between;margin-top:18px;color:#8090a8;font-size:12px}.nights-range-values strong{font-size:19px;color:#23476d;margin-left:4px}
.nights-range{position:relative;height:38px;margin:8px 10px 0}.nights-range-track{position:absolute;top:16px;left:0;right:0;height:5px;border-radius:5px;background:linear-gradient(to right,#e5ebf6 var(--range-start),#2554ed var(--range-start),#2554ed var(--range-end),#e5ebf6 var(--range-end))}
.nights-range input{position:absolute;inset:0;width:100%;height:38px;margin:0;padding:0;border:0;appearance:none;-webkit-appearance:none;background:transparent;pointer-events:none}
.nights-range input::-webkit-slider-runnable-track{height:5px;background:transparent}.nights-range input::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:23px;height:23px;border:3px solid #2554ed;border-radius:50%;background:white;margin-top:-9px;pointer-events:auto;cursor:ew-resize;box-shadow:0 2px 5px #2144b51a}
.nights-range input::-moz-range-track{height:5px;background:transparent}.nights-range input::-moz-range-thumb{width:18px;height:18px;border:3px solid #2554ed;border-radius:50%;background:white;pointer-events:auto;cursor:ew-resize}
.nights-range input:focus-visible{outline:none}.nights-range input:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 4px #dbe5ff}
.nights-range-limits{display:flex;justify-content:space-between;font-size:10px;color:#8a99b0}

.star-choice-text{letter-spacing:0;color:inherit}

.quick-filter-nights{left:auto;right:10px;width:min(230px,calc(100% - 20px));padding:9px 11px;border-radius:13px}
.quick-filter-nights .traveler-popover-title{font-size:12px}.quick-filter-nights .nights-range-values{margin-top:5px;font-size:10px}.quick-filter-nights .nights-range-values strong{font-size:15px}
.quick-filter-nights .nights-range{height:28px;margin:1px 7px 0}.quick-filter-nights .nights-range input{height:28px}.quick-filter-nights .nights-range-track{height:4px;top:12px}
.quick-filter-nights .nights-range input::-webkit-slider-runnable-track{height:4px}.quick-filter-nights .nights-range input::-webkit-slider-thumb{width:16px;height:16px;border-width:2px;margin-top:-6px}
.quick-filter-nights .nights-range input::-moz-range-track{height:4px}.quick-filter-nights .nights-range input::-moz-range-thumb{box-sizing:border-box;width:16px;height:16px;border-width:2px}
.quick-filter-nights .nights-range-limits{font-size:9px}.quick-filter-nights .traveler-done{min-height:28px;margin-top:5px;padding:3px;font-size:11px}

.calendar-dates-only .calendar-day{min-height:38px;padding:8px 4px}.custom-search-hint{font-size:12px;line-height:1.5;color:#7a8ca7;margin:8px 0}
.star-choice-heading{display:flex;flex-direction:column;gap:2px;min-width:0}.star-choice-stats{margin-left:auto;display:flex;flex-direction:column;align-items:flex-end;gap:2px;white-space:nowrap}.star-choice-stats strong{font-size:12px;color:#2853db}.star-choice .star-choice-check{margin-left:2px;width:12px;flex:none}.star-choice-note{font-size:10px;line-height:1.4;color:#8391a5;margin:8px 0 0}.cached-more{display:block;margin:12px auto}

/* A single visible city gets a wider hotel preview with its full summary. */
.city-showcase-focus .city-hotel-carousel>.card{flex-basis:min(330px,calc(100% - 28px))}
.city-showcase-focus .city-hotel-carousel>.card img,.app-view .city-showcase-focus .city-hotel-carousel>.card img,.city-showcase-focus .city-hotel-carousel .photo-missing{height:164px;min-height:164px}
.city-showcase-focus .city-hotel-carousel .body{padding:10px 12px 8px!important}
.city-showcase-focus .city-hotel-carousel .body h3{font-size:15px!important;line-height:1.3;margin:4px 0 5px}
.city-showcase-focus .city-hotel-carousel .body>small{font-size:10px}
.city-showcase-focus .city-hotel-carousel .body>small:last-child{display:block;margin-top:5px;color:#718198}
.city-showcase-focus .city-hotel-carousel .roomtext{display:block;font-size:11px;line-height:1.35;margin:6px 0 4px;overflow-wrap:anywhere}
.city-showcase-focus .city-hotel-carousel .chips{margin-top:6px;gap:5px}
.city-showcase-focus .city-hotel-carousel .chip{font-size:10px;padding:4px 7px}
.city-showcase-focus .city-hotel-carousel .stars{font-size:12px}
.city-showcase-focus .city-hotel-carousel .offer-price{padding:8px 12px 10px}
.city-showcase-focus .city-hotel-carousel .offer-price .price{font-size:28px}
.city-showcase-focus .city-hotel-carousel .offer-price>div>small:last-child{display:block;font-size:9px;margin-top:2px}
.city-showcase-focus .city-hotel-carousel .offer-price button{min-height:36px;font-size:12px;margin-top:7px}
.city-showcase-focus .city-hotel-carousel .offer-price{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px}
.city-showcase-focus .city-hotel-carousel .offer-price button{width:auto;margin:0;padding:8px 12px}
.app-view .city-showcase-focus .city-hotel-carousel>.card img,.app-view .city-showcase-focus .city-hotel-carousel .photo-missing{height:clamp(124px,calc(100dvh - 590px),164px);min-height:124px}
.app-view .city-showcase-focus .city-hotel-carousel .body{padding:8px 11px 5px!important}
.app-view .city-showcase-focus .city-hotel-carousel .body h3{margin:3px 0}
.app-view .city-showcase-focus .city-hotel-carousel .chips{margin-top:4px}
.app-view .city-showcase-focus .city-hotel-carousel .roomtext{margin:4px 0 2px}

/* Full-period choice lives in the calendar heading, not a separate panel. */
.calendar-flexible{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;gap:5px;min-height:32px;padding:5px 9px;border:1px solid #dce6ff;border-radius:9px;background:#f0f5ff;color:#315bca;font-family:inherit;font-size:11px;line-height:18px;font-weight:650;white-space:nowrap}
.calendar-flexible svg{width:17px;height:17px;flex:none}
.calendar-flexible:hover{border-color:#8badff;background:#e8f0ff}
.calendar-flexible.is-selected{background:#0053fc;border-color:#0053fc;color:white}
.calendar-flexible:focus-visible{outline:3px solid #a6bfff;outline-offset:3px}

/* Panels stay attached to the field that opened them. */
.discovery-toolbar .price-calendar{position:absolute;width:min(398px,100%);z-index:40;box-shadow:0 12px 36px #15376726}
.discovery-toolbar .price-calendar,.traveler-popover,.quick-filter-popover{overflow-y:auto;overscroll-behavior:contain}
.discovery-toolbar .price-calendar .calendar-day{min-height:46px}
.discovery-toolbar .calendar-dates-only .calendar-day{min-height:38px}
.discovery-toolbar .calendar-title{gap:6px}.discovery-toolbar .calendar-title h2{flex:1;font-size:17px}
.calendar-close{display:grid;place-items:center;flex:none;width:26px;height:30px;min-height:30px;padding:0;border-radius:8px;background:#f3f6fb;color:#7b8ca3;font-size:22px;line-height:1}
.calendar-done{margin-top:9px;min-height:30px;padding:5px;border-radius:9px}
.toolbar-option[aria-expanded=true],.toolbar-filter[aria-expanded=true]{outline:2px solid #a8c1ff;outline-offset:1px}

/* Up to three distinct hotels lead each city when no category is selected. */
.hotel-highlight{position:absolute;top:10px;left:9px;z-index:1;display:inline-flex;align-items:center;min-height:26px;max-width:calc(100% - 60px);padding:5px 8px;border:1px solid transparent;border-radius:8px;box-shadow:0 2px 8px #1733561f;font-size:10px;font-weight:700;line-height:14px;letter-spacing:-.1px;white-space:nowrap;pointer-events:none}
.hotel-highlight-lowest{background:#fc542c;color:#fff}
.hotel-highlight-value{background:#0053fc;color:#fff}
.hotel-highlight-upgrade{background:#eff5ff;color:#204ec0;border-color:#c4d7ff}

/* Consistent calm icon treatment from the selected home and country concepts. */
.ui-icon{display:block;width:20px;height:20px;flex-shrink:0}
.header .nav button[data-action="menu"]{display:grid;place-items:center;min-width:38px}
.header .nav button[data-action="menu"] svg{width:20px;height:20px}
.bottomnav{border-color:#dce3ee;box-shadow:0 -2px 12px #172b4d04;padding:9px 0 12px}
.bottomnav a{color:#526176;line-height:1.3}
.bottomnav a>span{display:flex;justify-content:center;margin-bottom:4px;line-height:1}
.bottomnav svg{width:23px;height:23px}
.bottomnav a[aria-current]{color:#2156b8;font-weight:600}
.bottomnav a[aria-current][data-nav="home"] svg{fill:currentColor}
.quick-filter-icon,.quick-chevron{display:inline-flex;align-items:center}
.quick-filter-icon svg{width:17px;height:17px}
.quick-chevron svg{width:13px;height:13px}
.quick-filter-more .toolbar-option>svg{width:17px;height:17px}
.heart{display:grid;place-items:center;color:#2156b8}
.heart svg{width:19px;height:19px;fill:none}
.heart[aria-pressed="true"] svg{fill:currentColor}
.discovery-toolbar-frame{background:#2156b8}
.discovery-toolbar .toolbar-filter{background:#2156b8;box-shadow:0 2px 5px #2156b812}
.discovery-toolbar .toolbar-search{background:#c64624;color:#fff}
.discovery-toolbar .toolbar-search:hover{background:#ab381c}
.discovery-toolbar .quick-filter-icon,.discovery-toolbar .toolbar-option>svg{color:#2156b8}
