.rpe-city-collection{padding:clamp(48px,6vw,88px) clamp(20px,5vw,72px);background:#fff;color:#101114;overflow:hidden}.rpe-city-collection header{max-width:1280px;margin:0 auto 30px}.rpe-city-collection__eyebrow{display:block;font-size:12px;font-weight:850;letter-spacing:.16em;text-transform:uppercase;color:#ed1c24}.rpe-city-collection h2{font-size:clamp(34px,4vw,58px);line-height:1.02;letter-spacing:-.045em;margin:9px 0 12px;color:#111}.rpe-city-collection header p{max-width:680px;color:#667085;font-size:16px;line-height:1.65;margin:0}.rpe-city-collection__viewport{max-width:1280px;margin:auto;overflow:visible}.rpe-city-collection__track{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.rpe-city-collection--carousel .rpe-city-collection__viewport{overflow-x:auto;scrollbar-width:thin;scrollbar-color:rgba(17,24,39,.25) transparent;scroll-snap-type:x mandatory;overscroll-behavior-inline:contain;padding:4px 0 16px}.rpe-city-collection--carousel .rpe-city-collection__track{display:flex;width:max-content}.rpe-city-collection--carousel .rpe-city-card{width:min(340px,82vw);flex:0 0 min(340px,82vw);scroll-snap-align:start}.rpe-city-card{position:relative;min-height:410px;border-radius:24px;overflow:hidden;background:#17191d;box-shadow:0 18px 50px rgba(15,23,42,.15);isolation:isolate;transform:translateZ(0);transition:transform .45s cubic-bezier(.22,1,.36,1),box-shadow .45s ease}.rpe-city-card:hover{transform:translateY(-8px);box-shadow:0 28px 70px rgba(15,23,42,.24)}.rpe-city-card a{position:absolute;inset:0;display:block;color:#fff;text-decoration:none}.rpe-city-card img,.rpe-city-card__placeholder{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.22,1,.36,1),filter .45s ease}.rpe-city-card:hover img{transform:scale(1.055);filter:saturate(1.08)}.rpe-city-card__placeholder{display:grid;place-items:center;background:radial-gradient(circle at 72% 18%,rgba(255,255,255,.15),transparent 24%),linear-gradient(145deg,#ed1c24 0%,#8b1015 47%,#08090b 100%)}.rpe-city-card__placeholder span{font-size:clamp(88px,10vw,132px);font-weight:950;line-height:1;color:rgba(255,255,255,.9);text-shadow:0 18px 45px rgba(0,0,0,.24)}.rpe-city-card__shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,6,10,.04) 10%,rgba(4,6,10,.14) 42%,rgba(4,6,10,.92) 100%);transition:background .4s ease}.rpe-city-card:hover .rpe-city-card__shade{background:linear-gradient(180deg,rgba(4,6,10,.03) 5%,rgba(4,6,10,.12) 36%,rgba(4,6,10,.96) 100%)}.rpe-city-card__badge{position:absolute;top:18px;right:18px;padding:7px 11px;border:1px solid rgba(255,255,255,.25);border-radius:999px;background:rgba(12,15,20,.5);backdrop-filter:blur(12px);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.rpe-city-card__body{position:absolute;left:0;right:0;bottom:0;padding:26px;transform:translateY(0);transition:transform .42s cubic-bezier(.22,1,.36,1)}.rpe-city-card__country{display:flex;align-items:center;gap:8px;color:rgba(255,255,255,.78);font-size:13px;font-weight:700;letter-spacing:.02em}.rpe-city-card__flag{font-size:18px;line-height:1}.rpe-city-card h3{font-size:clamp(28px,3vw,38px);line-height:1;margin:10px 0 14px;letter-spacing:-.035em;color:#fff}.rpe-city-card__stats{display:flex;gap:16px;flex-wrap:wrap;margin:0 0 17px}.rpe-city-card__stat{display:grid;gap:2px}.rpe-city-card__stat strong{font-size:15px;color:#fff}.rpe-city-card__stat small{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.58)}.rpe-city-card__count{margin:0 0 14px;color:rgba(255,255,255,.75)}.rpe-city-card__action{display:inline-flex;align-items:center;gap:5px;font-weight:800;font-size:14px;color:#fff;transition:gap .25s ease}.rpe-city-card:hover .rpe-city-card__action{gap:10px}.rpe-city-card.is-current{outline:3px solid #ed1c24;outline-offset:4px}.rpe-city-card.is-current:after{content:"Current city";position:absolute;left:18px;top:18px;z-index:3;padding:7px 11px;border-radius:999px;background:#ed1c24;color:#fff;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.rpe-city-collection--editorial .rpe-city-collection__track{grid-template-columns:1.55fr 1fr 1fr}.rpe-city-collection--editorial .rpe-city-card:first-child{grid-row:span 2;min-height:838px}.rpe-city-collection--compact .rpe-city-card{min-height:270px;border-radius:18px}.rpe-city-collection--compact .rpe-city-card__body{padding:20px}.rpe-city-collection--compact .rpe-city-card h3{font-size:25px;margin-bottom:10px}.rpe-city-collection__empty{padding:42px;border:1px dashed #cbd5e1;border-radius:20px;color:#64748b;text-align:center}@media(max-width:1000px){.rpe-city-collection__track{grid-template-columns:repeat(2,minmax(0,1fr))}.rpe-city-collection--editorial .rpe-city-collection__track{grid-template-columns:1fr 1fr}.rpe-city-collection--editorial .rpe-city-card:first-child{grid-row:auto;min-height:410px}}@media(max-width:620px){.rpe-city-collection{padding:42px 18px}.rpe-city-collection__track{grid-template-columns:1fr}.rpe-city-card{min-height:360px;border-radius:20px}.rpe-city-card__body{padding:22px}.rpe-city-collection--carousel .rpe-city-card{width:84vw;flex-basis:84vw}.rpe-city-card:hover{transform:none}}

/* 1.4.0 Geographic Runtime Integration */
.rpe-city-card{background:linear-gradient(145deg,var(--rpe-city-primary,#ed1c24),var(--rpe-city-accent,#08090c));}
.rpe-city-card.has-image img{opacity:1!important;filter:saturate(1.06) contrast(1.03);}
.rpe-city-card__shade{background:linear-gradient(180deg,rgba(3,5,9,.03) 12%,rgba(3,5,9,.22) 48%,rgba(3,5,9,.94) 100%)!important;}
.rpe-city-card__flag img{width:22px;height:15px;object-fit:cover;border-radius:2px;box-shadow:0 1px 4px rgba(0,0,0,.28);}
.rpe-city-runtime-preview .rpe-city-collection{margin:0;padding:24px;background:#fff;color:#101217;border-radius:8px;}
.rpe-city-runtime-preview .rpe-city-collection__track{gap:14px;}
.rpe-city-runtime-preview .rpe-city-card{min-width:220px;}

/* 5.0.0K — Popular Cities first-class component */
.rpe-popular-cities header{display:flex;align-items:end;justify-content:space-between;gap:28px}.rpe-city-collection__view-all{flex:0 0 auto;color:#111;text-decoration:none;font-weight:800;font-size:14px;padding-bottom:4px;border-bottom:2px solid var(--rpe-color-primary,#ed1c24)}.rpe-city-collection__view-all:hover{color:var(--rpe-color-primary,#ed1c24)}.rpe-popular-cities.rpe-city-collection--grid .rpe-city-collection__track{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:900px){.rpe-popular-cities header{align-items:start;flex-direction:column}.rpe-popular-cities.rpe-city-collection--grid .rpe-city-collection__track{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.rpe-popular-cities.rpe-city-collection--grid .rpe-city-collection__track{grid-template-columns:1fr}}
.rpe-popular-cities.rpe-city-columns-2 .rpe-city-collection__track{grid-template-columns:repeat(2,minmax(0,1fr))}.rpe-popular-cities.rpe-city-columns-3 .rpe-city-collection__track{grid-template-columns:repeat(3,minmax(0,1fr))}.rpe-popular-cities.rpe-city-columns-4 .rpe-city-collection__track{grid-template-columns:repeat(4,minmax(0,1fr))}.rpe-popular-cities.rpe-city-columns-5 .rpe-city-collection__track{grid-template-columns:repeat(5,minmax(0,1fr))}.rpe-popular-cities.rpe-city-columns-6 .rpe-city-collection__track{grid-template-columns:repeat(6,minmax(0,1fr))}@media(max-width:1000px){.rpe-popular-cities[class*="rpe-city-columns-"] .rpe-city-collection__track{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.rpe-popular-cities[class*="rpe-city-columns-"] .rpe-city-collection__track{grid-template-columns:1fr}}

/* 5.0.0K.1 — Popular Cities inherits the exact City Homepage Hero timeline. */
.rpe-city-card__media-runtime{position:absolute;inset:0;display:block;overflow:hidden}
.rpe-city-card__media-runtime>.rpe-city-media-runtime{position:absolute;inset:0;width:100%;height:100%}
.rpe-city-card__media-runtime .rpe-city-media-frame{width:100%;height:100%;object-fit:cover}
.rpe-city-card__media-runtime .rpe-vee-runtime-inspector{display:none}

/* 5.0.0M — Popular Cities Visual Composition & Premium Carousel Experience */
.rpe-popular-cities.rpe-city-visual--editorial-immersive{
  --rpe-city-gap:22px;
  --rpe-city-card-width:clamp(280px,26vw,360px);
  padding-top:clamp(54px,6vw,84px);
  padding-bottom:clamp(56px,6vw,84px);
  background:linear-gradient(180deg,#fff 0%,#fff 76%,#fbfbfc 100%);
}
.rpe-popular-cities.rpe-city-visual--editorial-immersive header{margin-bottom:26px;align-items:flex-end}
.rpe-city-collection__header-actions{display:flex;align-items:center;gap:14px;flex:0 0 auto}
.rpe-city-collection__view-all{display:inline-flex;align-items:center;gap:8px;border:0;padding:10px 0;color:#111;font-weight:760;letter-spacing:-.01em;transition:color .25s ease,gap .25s ease}
.rpe-city-collection__view-all:after{content:"";position:absolute}
.rpe-city-collection__view-all:hover{gap:12px}
.rpe-city-collection__rail-controls{display:flex;gap:8px}
.rpe-city-collection__arrow{width:42px;height:42px;border-radius:999px;border:1px solid rgba(16,17,20,.12);background:rgba(255,255,255,.9);box-shadow:0 8px 28px rgba(15,23,42,.08);display:grid;place-items:center;color:#101114;font-size:17px;cursor:pointer;transition:transform .25s ease,background .25s ease,color .25s ease,border-color .25s ease,opacity .25s ease}
.rpe-city-collection__arrow:hover:not(:disabled){transform:translateY(-2px);background:#101114;color:#fff;border-color:#101114}
.rpe-city-collection__arrow:disabled{opacity:.28;cursor:default;box-shadow:none}
.rpe-city-collection__rail-shell{position:relative;max-width:1280px;margin:0 auto}
.rpe-popular-cities.rpe-city-collection--carousel .rpe-city-collection__viewport{max-width:none;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-ms-overflow-style:none;scroll-snap-type:x proximity;overscroll-behavior-inline:contain;padding:6px 0 10px;cursor:grab;touch-action:pan-y pinch-zoom}
.rpe-popular-cities.rpe-city-collection--carousel .rpe-city-collection__viewport::-webkit-scrollbar{display:none;width:0;height:0}
.rpe-popular-cities.rpe-city-collection--carousel .rpe-city-collection__viewport.is-dragging{cursor:grabbing;scroll-snap-type:none;user-select:none}
.rpe-popular-cities.rpe-city-collection--carousel .rpe-city-collection__track{display:flex;gap:var(--rpe-city-gap,20px);width:max-content;padding:0 2px}
.rpe-popular-cities.rpe-city-visual--editorial-immersive .rpe-city-card{width:var(--rpe-city-card-width);flex:0 0 var(--rpe-city-card-width);min-height:0;aspect-ratio:.78/1;border-radius:28px;box-shadow:0 18px 46px rgba(15,23,42,.13);scroll-snap-align:start;scroll-snap-stop:normal}
.rpe-popular-cities.rpe-city-visual--editorial-immersive .rpe-city-card:hover{transform:translateY(-6px);box-shadow:0 28px 64px rgba(15,23,42,.19)}
.rpe-popular-cities.rpe-city-visual--editorial-immersive .rpe-city-card__shade{background:linear-gradient(180deg,rgba(4,6,10,.01) 0%,rgba(4,6,10,.05) 38%,rgba(4,6,10,.36) 66%,rgba(4,6,10,.92) 100%)!important}
.rpe-popular-cities.rpe-city-visual--editorial-immersive .rpe-city-card:hover .rpe-city-card__shade{background:linear-gradient(180deg,rgba(4,6,10,0) 0%,rgba(4,6,10,.04) 34%,rgba(4,6,10,.32) 62%,rgba(4,6,10,.95) 100%)!important}
.rpe-popular-cities.rpe-city-visual--editorial-immersive .rpe-city-card__body{padding:26px 26px 25px}
.rpe-popular-cities.rpe-city-visual--editorial-immersive .rpe-city-card__country{font-size:12px;font-weight:700;color:rgba(255,255,255,.8)}
.rpe-popular-cities.rpe-city-visual--editorial-immersive .rpe-city-card h3{font-size:clamp(29px,2.5vw,38px);margin:8px 0 12px;letter-spacing:-.045em}
.rpe-popular-cities.rpe-city-visual--editorial-immersive .rpe-city-card__stats{margin-bottom:13px}
.rpe-popular-cities.rpe-city-visual--editorial-immersive .rpe-city-card__stat{display:flex;align-items:baseline;gap:7px}
.rpe-popular-cities.rpe-city-visual--editorial-immersive .rpe-city-card__stat strong{font-size:14px;font-weight:760}
.rpe-popular-cities.rpe-city-visual--editorial-immersive .rpe-city-card__stat small{font-size:9px;letter-spacing:.12em;color:rgba(255,255,255,.62)}
.rpe-popular-cities.rpe-city-visual--editorial-immersive .rpe-city-card__action{font-size:13px;font-weight:760;opacity:.88;transform:translateY(2px);transition:gap .25s ease,opacity .25s ease,transform .25s ease}
.rpe-popular-cities.rpe-city-visual--editorial-immersive .rpe-city-card:hover .rpe-city-card__action{opacity:1;transform:translateY(0)}
.rpe-city-collection__edge{position:absolute;top:0;bottom:10px;width:54px;z-index:5;pointer-events:none;opacity:0;transition:opacity .25s ease}
.rpe-city-collection__edge.is-left{left:-1px;background:linear-gradient(90deg,#fff 8%,rgba(255,255,255,0) 100%)}
.rpe-city-collection__edge.is-right{right:-1px;background:linear-gradient(270deg,#fff 8%,rgba(255,255,255,0) 100%)}
.rpe-popular-cities.has-overflow:not(.is-at-start) .rpe-city-collection__edge.is-left{opacity:1}
.rpe-popular-cities.has-overflow:not(.is-at-end) .rpe-city-collection__edge.is-right{opacity:1}
.rpe-city-collection__progress{max-width:1280px;margin:14px auto 0;height:3px;background:#eceef1;border-radius:999px;overflow:hidden;position:relative}
.rpe-city-collection__progress>span{position:absolute;left:var(--rpe-progress-x,0%);top:0;bottom:0;width:var(--rpe-progress-size,28%);border-radius:999px;background:linear-gradient(90deg,var(--rpe-color-primary,#ed1c24),#ff4754);transition:width .22s ease,left .16s ease-out}
.rpe-popular-cities:not(.has-overflow) .rpe-city-collection__progress{display:none}
.rpe-popular-cities.rpe-city-visual--classic-rail .rpe-city-card{border-radius:24px}
@media(max-width:900px){
  .rpe-popular-cities header{flex-direction:row;align-items:flex-end}
  .rpe-city-collection__view-all{display:none}
  .rpe-popular-cities.rpe-city-visual--editorial-immersive{--rpe-city-card-width:min(72vw,330px);--rpe-city-gap:16px}
  .rpe-city-collection__edge{display:none}
}
@media(max-width:620px){
  .rpe-popular-cities.rpe-city-visual--editorial-immersive{padding-left:18px;padding-right:18px;--rpe-city-card-width:82vw;--rpe-city-gap:14px}
  .rpe-popular-cities.rpe-city-visual--editorial-immersive header{margin-bottom:20px}
  .rpe-city-collection__rail-controls{display:none!important}
  .rpe-city-collection__progress{margin-top:10px}
  .rpe-popular-cities.rpe-city-visual--editorial-immersive .rpe-city-card{border-radius:24px}
}
@media(prefers-reduced-motion:reduce){
  .rpe-city-card,.rpe-city-card img,.rpe-city-card__action,.rpe-city-collection__arrow,.rpe-city-collection__progress>span{transition:none!important}
}

/* 5.0.0M.1 — Premium Navigation Controls & Floating Carousel Arrows */
.rpe-city-collection__rail-controls--floating{
  position:absolute;
  inset:0;
  z-index:12;
  display:block;
  pointer-events:none;
}
.rpe-city-collection__rail-controls--floating .rpe-city-collection__arrow{
  position:absolute;
  top:50%;
  width:58px;
  height:58px;
  transform:translateY(-50%);
  border:1px solid rgba(255,255,255,.68);
  background:rgba(255,255,255,.88);
  -webkit-backdrop-filter:blur(18px) saturate(1.15);
  backdrop-filter:blur(18px) saturate(1.15);
  box-shadow:0 14px 42px rgba(15,23,42,.18),inset 0 1px 0 rgba(255,255,255,.78);
  color:#111318;
  font-size:34px;
  font-weight:400;
  line-height:1;
  opacity:1;
  pointer-events:auto;
  transition:opacity .25s ease,transform .28s cubic-bezier(.22,1,.36,1),background .25s ease,color .25s ease,box-shadow .25s ease;
}
.rpe-city-collection__rail-controls--floating .rpe-city-collection__arrow.is-prev{left:-29px}
.rpe-city-collection__rail-controls--floating .rpe-city-collection__arrow.is-next{right:-29px}
.rpe-city-collection__rail-controls--floating .rpe-city-collection__arrow:hover:not(:disabled),
.rpe-city-collection__rail-controls--floating .rpe-city-collection__arrow:focus-visible{
  transform:translateY(-50%) scale(1.06);
  background:rgba(255,255,255,.98);
  color:var(--rpe-color-primary,#ed1c24);
  box-shadow:0 18px 52px rgba(15,23,42,.24),0 0 0 4px rgba(255,255,255,.42);
  outline:none;
}
.rpe-popular-cities .rpe-city-collection__rail-shell:hover .rpe-city-collection__rail-controls--floating .rpe-city-collection__arrow:not(:disabled),
.rpe-popular-cities .rpe-city-collection__rail-controls--floating:focus-within .rpe-city-collection__arrow:not(:disabled){opacity:1}
.rpe-popular-cities.is-at-start .rpe-city-collection__rail-controls--floating .is-prev,
.rpe-popular-cities.is-at-end .rpe-city-collection__rail-controls--floating .is-next,
.rpe-popular-cities.has-overflow.is-at-start .rpe-city-collection__rail-controls--floating .is-prev,
.rpe-popular-cities.has-overflow.is-at-end .rpe-city-collection__rail-controls--floating .is-next{opacity:0;visibility:hidden;pointer-events:none}
.rpe-popular-cities.is-at-start .rpe-city-collection__rail-controls--floating .is-prev,
.rpe-popular-cities.is-at-end .rpe-city-collection__rail-controls--floating .is-next{opacity:0;visibility:hidden;pointer-events:none}

.rpe-city-collection__rail-controls--floating .rpe-city-collection__arrow:disabled{opacity:0!important;visibility:hidden;pointer-events:none}
.rpe-popular-cities.rpe-city-visual--editorial-immersive .rpe-city-collection__rail-shell{isolation:isolate}
.rpe-popular-cities.rpe-city-visual--editorial-immersive .rpe-city-collection__edge{width:76px}
@media(max-width:1380px){
  .rpe-city-collection__rail-controls--floating .rpe-city-collection__arrow.is-prev{left:12px}
  .rpe-city-collection__rail-controls--floating .rpe-city-collection__arrow.is-next{right:12px}
}
@media(max-width:900px){
  .rpe-city-collection__rail-controls--floating .rpe-city-collection__arrow{width:50px;height:50px;font-size:30px}
  .rpe-city-collection__rail-controls--floating .rpe-city-collection__arrow.is-prev{left:8px}
  .rpe-city-collection__rail-controls--floating .rpe-city-collection__arrow.is-next{right:8px}
}
@media(max-width:620px){.rpe-city-collection__rail-controls--floating{display:none!important}}


/* 5.0.0M.3 — Popular Cities Bottom Content Readability */
.rpe-popular-cities.rpe-city-visual--editorial-immersive .rpe-city-card__body{
  position:absolute!important;
  left:0;
  right:0;
  top:auto!important;
  bottom:0!important;
  z-index:7;
  padding:30px 27px 28px;
}
.rpe-popular-cities.rpe-city-visual--editorial-immersive .rpe-city-card__shade{
  z-index:4;
  background:linear-gradient(180deg,rgba(3,5,9,0) 0%,rgba(3,5,9,.01) 38%,rgba(3,5,9,.18) 56%,rgba(3,5,9,.72) 78%,rgba(3,5,9,.97) 100%)!important;
}
.rpe-popular-cities.rpe-city-visual--editorial-immersive .rpe-city-card:hover .rpe-city-card__shade{
  background:linear-gradient(180deg,rgba(3,5,9,0) 0%,rgba(3,5,9,.01) 34%,rgba(3,5,9,.15) 53%,rgba(3,5,9,.72) 76%,rgba(3,5,9,.98) 100%)!important;
}
.rpe-popular-cities.rpe-city-visual--editorial-immersive .rpe-city-card__country{color:rgba(255,255,255,.82);text-shadow:0 1px 8px rgba(0,0,0,.28)}
.rpe-popular-cities.rpe-city-visual--editorial-immersive .rpe-city-card h3{margin:8px 0 13px;text-shadow:0 2px 16px rgba(0,0,0,.3)}
.rpe-popular-cities.rpe-city-visual--editorial-immersive .rpe-city-card__stats,.rpe-popular-cities.rpe-city-visual--editorial-immersive .rpe-city-card__action{text-shadow:0 1px 8px rgba(0,0,0,.32)}
@media(max-width:620px){.rpe-popular-cities.rpe-city-visual--editorial-immersive .rpe-city-card__body{padding:25px 22px 23px}}


/* 5.0.0AE.10.5.89 — Remove Popular Cities carousel progress line.
 * Carousel remains fully scrollable/draggable and arrow navigation is unchanged. */
.rpe-popular-cities .rpe-city-collection__progress{
  display:none!important;
}
