/* Package itinerary ribbon. Euclea Safaris brand colors only. */
.journey-card-media,.tour-result-media,.market-package-media,.package-related-media{position:relative}
.package-card-route{
  position:absolute;z-index:4;left:10px;right:10px;bottom:10px;
  display:flex;align-items:center;gap:11px;min-width:0;min-height:40px;
  padding:8px 11px;border-radius:9px;overflow:hidden;pointer-events:none;
  border:1px solid rgba(255,255,255,.32);
  background:rgba(22,50,79,.94);color:#fff;
  box-shadow:0 4px 16px rgba(0,0,0,.16);
  font-family:var(--site-body-font,"Kumbh Sans",Arial,sans-serif);
  text-align:left;line-height:1.3;
}
.package-card-route-label{
  flex:none;color:#F1A44F;font-size:10px;font-weight:700;
  letter-spacing:.06em;text-transform:uppercase;
}
.package-card-route-window{display:block;flex:1;min-width:0;overflow:hidden;white-space:nowrap}
.package-card-route-track{display:flex;flex:none;width:max-content;align-items:center;white-space:nowrap}
.package-card-route-text{display:block;flex:none;white-space:nowrap;padding-right:30px;font-size:11px;font-weight:600;letter-spacing:0;color:#fff}
.package-card-route.is-scrolling .package-card-route-track{
  will-change:transform;
  animation:eucleaPackageRouteTravel var(--package-route-duration,14s) linear infinite;
}
/* Pause on a real mouse hover, not a sticky touch-screen hover state. */
@media (hover:hover) and (pointer:fine){
  .journey-card:hover .package-card-route-track,
  .tour-result-card:hover .package-card-route-track,
  .market-package-card:hover .package-card-route-track,
  .package-related-card:hover .package-card-route-track{animation-play-state:paused}
}
/* Keyboard focus remains usable; touch taps do not freeze the ticker. */
.journey-card-media:focus-visible .package-card-route-track,
.tour-result-media:focus-visible .package-card-route-track,
.market-package-media:focus-visible .package-card-route-track,
.package-related-media:focus-visible .package-card-route-track{animation-play-state:paused}
@keyframes eucleaPackageRouteTravel{
  from{transform:translate3d(0,0,0)}
  to{transform:translate3d(calc(-1 * var(--package-route-distance,0px)),0,0)}
}
@media(max-width:620px){
  .package-card-route{left:8px;right:8px;bottom:8px;min-height:36px;gap:8px;padding:7px 9px}
  .package-card-route-text{font-size:10px}
  .package-card-route-label{font-size:9px}
}
@media(prefers-reduced-motion:reduce){
  .package-card-route.is-scrolling .package-card-route-track{animation:none!important;will-change:auto}
}
