/* High-refresh scrolling: stop nonessential compositing while the page is moving. */
html{scroll-behavior:auto!important}
body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}

/* Entrance transforms can look like page shake when several cards enter together. */
.reveal,.reveal.visible{opacity:1!important;transform:none!important;transition:none!important}

/* The JS photo cycle already controls the active journey image; this removes 24 redundant infinite 3D animations. */
#journeys .journey-card-3d .journey-media img{animation:none!important;will-change:auto!important}
#journeys .journey-card-3d .journey-media img:not(.is-active){opacity:0!important;pointer-events:none}
#journeys .journey-card-3d .journey-media img.is-active{opacity:1!important}

html.is-scrolling .pulse,
html.is-scrolling .floating-leaf,
html.is-scrolling .card-wiggle,
html.is-scrolling .route-gallery-word span{animation-play-state:paused!important}
html.is-scrolling .travel-ring-thumb,
html.is-scrolling #journeys .journey-media,
html.is-scrolling #journeys .journey-media img,
html.is-scrolling .rental-preview-card img,
html.is-scrolling .package-card img,
html.is-scrolling .rental-card img,
html.is-scrolling .independent-car-card,
html.is-scrolling .button{transition:none!important}
html.is-scrolling .travel-ring-search,
html.is-scrolling .premium-footer .footer-support,
html.is-scrolling .support-dock-panel{backdrop-filter:none!important}

@media(max-width:850px),(hover:none) and (pointer:coarse){
  /* Touch scrolling must never feed a 3D card transform. */
  #journeys .journey-card-3d{perspective:none!important}
  #journeys .journey-card-3d .journey-media{transform:none!important;transform-style:flat!important;transition:none!important}
  #journeys .journey-card-3d .journey-media img{transform:none!important;filter:none!important;transition:opacity 1.35s cubic-bezier(.22,.61,.36,1)!important;will-change:opacity!important}
  #journeys .journey-card-3d:before,#journeys .journey-card-3d .journey-content{transform:none!important}

  /* Image masks and live backdrop blur are costly on mobile during fast scroll. */
  main :is(.journey-media img,.rental-preview-card img,.promise-image img,.fleet-cards img,.story-photo img,.page-hero-visual img,.package-card img,.rental-card img){-webkit-mask-image:none!important;mask-image:none!important}
  .travel-ring-search,.premium-footer .footer-support,.support-dock-panel{backdrop-filter:none!important}
  .travel-ring-thumb{will-change:auto!important}
  .pulse,.floating-leaf,.card-wiggle{animation:none!important}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto!important}
}
