/* DXTN Motion Runtime 5.11.3 — one canonical motion layer. */
.dxtn-private-route-app {
	--dxtn-motion-distance: 26px;
	--dxtn-motion-duration: 820ms;
	--dxtn-motion-hero-duration: 1050ms;
	--dxtn-timeline-progress: 0;
}
.dxtn-motion-speed-slow { --dxtn-motion-duration: 980ms; --dxtn-motion-hero-duration: 1250ms; }
.dxtn-motion-speed-normal { --dxtn-motion-duration: 760ms; --dxtn-motion-hero-duration: 1050ms; }
.dxtn-motion-speed-fast { --dxtn-motion-duration: 560ms; --dxtn-motion-hero-duration: 780ms; }

/* Hero entrance. Content stays visible until JavaScript explicitly enables motion. */
.dxtn-private-route-app.dxtn-motion-enabled.dxtn-motion-soft .dxtn-hero-copy > *,
.dxtn-private-route-app.dxtn-motion-enabled.dxtn-motion-full .dxtn-hero-copy > * {
	opacity: 0;
	transform: translate3d(0,var(--dxtn-motion-distance),0);
	transition: opacity var(--dxtn-motion-duration) var(--dxtn-ease),transform var(--dxtn-motion-duration) var(--dxtn-ease);
}
.dxtn-private-route-app.dxtn-motion-enabled.dxtn-motion-soft.dxtn-motion-ready .dxtn-hero-copy > *,
.dxtn-private-route-app.dxtn-motion-enabled.dxtn-motion-full.dxtn-motion-ready .dxtn-hero-copy > * {
	opacity: 1;
	transform: none;
}
.dxtn-motion-ready .dxtn-hero-copy > :nth-child(2) { transition-delay: 60ms; }
.dxtn-motion-ready .dxtn-hero-copy > :nth-child(3) { transition-delay: 120ms; }
.dxtn-motion-ready .dxtn-hero-copy > :nth-child(4) { transition-delay: 180ms; }
.dxtn-motion-ready .dxtn-hero-copy > :nth-child(5) { transition-delay: 240ms; }
.dxtn-motion-ready .dxtn-hero-copy > :nth-child(6) { transition-delay: 300ms; }
.dxtn-motion-ready .dxtn-hero-copy > :nth-child(7) { transition-delay: 360ms; }
.dxtn-private-route-app.dxtn-motion-profile-dynamic .dxtn-hero-copy > * { transition-duration: .62s; }
.dxtn-private-route-app.dxtn-motion-profile-luxury .dxtn-hero-copy > * { transition-duration: .88s; }
.dxtn-private-route-app.dxtn-motion-profile-subtle .dxtn-hero-copy > * { transition-duration: .68s; }

.dxtn-private-route-app.dxtn-motion-enabled.dxtn-motion-soft .dxtn-hero-media,
.dxtn-private-route-app.dxtn-motion-enabled.dxtn-motion-full .dxtn-hero-media {
	opacity: 0;
	transform: translate3d(0,28px,0) scale(.985);
	transition: opacity var(--dxtn-motion-hero-duration) var(--dxtn-ease) .12s,transform var(--dxtn-motion-hero-duration) var(--dxtn-ease) .12s;
}
.dxtn-private-route-app.dxtn-motion-enabled.dxtn-motion-soft.dxtn-motion-ready .dxtn-hero-media,
.dxtn-private-route-app.dxtn-motion-enabled.dxtn-motion-full.dxtn-motion-ready .dxtn-hero-media {
	opacity: 1;
	transform: none;
}

/* Scroll reveal. */
.dxtn-private-route-app.dxtn-motion-enabled [data-dxtn-reveal][data-dxtn-motion-active="1"] {
	opacity: 0;
	backface-visibility: hidden;
	transform: translate3d(0,var(--dxtn-motion-distance),0);
	transition-duration: var(--dxtn-motion-duration);
	transition-property: opacity,transform,clip-path;
	transition-timing-function: var(--dxtn-ease);
}
.dxtn-private-route-app.dxtn-motion-enabled [data-dxtn-reveal][data-dxtn-motion-active="1"][data-dxtn-motion-effect="fade"] { transform: none; }
.dxtn-private-route-app.dxtn-motion-enabled [data-dxtn-reveal][data-dxtn-motion-active="1"][data-dxtn-motion-effect="left"] { transform: translate3d(calc(var(--dxtn-motion-distance) * -1),0,0); }
.dxtn-private-route-app.dxtn-motion-enabled [data-dxtn-reveal][data-dxtn-motion-active="1"][data-dxtn-motion-effect="right"] { transform: translate3d(var(--dxtn-motion-distance),0,0); }
.dxtn-private-route-app.dxtn-motion-enabled [data-dxtn-reveal][data-dxtn-motion-active="1"][data-dxtn-motion-effect="scale"] { transform: scale(.965); }
.dxtn-private-route-app.dxtn-motion-enabled [data-dxtn-reveal][data-dxtn-motion-active="1"][data-dxtn-motion-effect="mask"] {
	clip-path: inset(0 0 100% 0 round 12px);
	transform: translate3d(0,calc(var(--dxtn-motion-distance) * .5),0);
}
.dxtn-private-route-app.dxtn-mask-left [data-dxtn-reveal][data-dxtn-motion-active="1"][data-dxtn-motion-effect="mask"] { clip-path: inset(0 100% 0 0 round 12px); }
.dxtn-private-route-app.dxtn-mask-right [data-dxtn-reveal][data-dxtn-motion-active="1"][data-dxtn-motion-effect="mask"] { clip-path: inset(0 0 0 100% round 12px); }
.dxtn-private-route-app.dxtn-motion-enabled [data-dxtn-reveal][data-dxtn-motion-active="1"].is-revealed {
	opacity: 1;
	clip-path: inset(0 0 0 0 round 12px);
	transform: none;
}
.dxtn-private-route-app.dxtn-motion-enabled [data-dxtn-reveal][data-dxtn-motion-active="1"].is-revealed:not(.is-reveal-complete) { will-change: opacity,transform,clip-path; }
.dxtn-private-route-app.dxtn-motion-enabled [data-dxtn-reveal].is-reveal-complete { will-change: auto; }

/* Hero media modes and depth. */
.dxtn-private-route-app[data-dxtn-image-motion="reveal"] .dxtn-hero-image {
	clip-path: inset(0 0 0 10% round 24px);
	transition: clip-path var(--dxtn-motion-hero-duration) var(--dxtn-ease);
}
.dxtn-private-route-app.dxtn-motion-ready[data-dxtn-image-motion="reveal"] .dxtn-hero-image { clip-path: inset(0 0 0 0 round 24px); }
.dxtn-private-route-app[data-dxtn-image-motion="cinematic"] .dxtn-hero-image img {
	transform: translate3d(0,var(--dxtn-parallax-y,0),0) scale(1.045);
	transition: transform 8s cubic-bezier(.2,.65,.2,1);
}
.dxtn-private-route-app.dxtn-motion-ready[data-dxtn-image-motion="cinematic"] .dxtn-hero-image img { transform: translate3d(0,var(--dxtn-parallax-y,0),0) scale(1.012); }
.dxtn-private-route-app[data-dxtn-image-motion="parallax"] .dxtn-hero-image img {
	transform: translate3d(0,var(--dxtn-parallax-y,0),0) scale(1.055);
	transition: transform .35s linear;
}
.dxtn-private-route-app.dxtn-motion-full [data-dxtn-depth] {
	transform: translate3d(calc(var(--dxtn-pointer-x,0) * 9px),calc(var(--dxtn-pointer-y,0) * 7px),0);
	transition: transform .8s var(--dxtn-ease);
}
.dxtn-private-route-app.dxtn-motion-enabled [data-dxtn-section-parallax="low"] {
	backface-visibility: hidden;
	transform: translate3d(0,var(--dxtn-section-parallax-y,0),0);
	transition: transform .16s cubic-bezier(.2,.65,.2,1);
}
.dxtn-private-route-app.dxtn-motion-enabled [data-dxtn-section-parallax="low"].is-parallax-active { will-change: transform; }

/* Quiet continuous motion. */
.dxtn-private-route-app.dxtn-motion-full .dxtn-hero-ambient { animation: dxtn-ambient-breathe 9s ease-in-out infinite alternate; }
.dxtn-private-route-app.dxtn-motion-full.dxtn-theme-pilgrimage .dxtn-hero-ambient { animation-duration: 12s; }
.dxtn-private-route-app.dxtn-motion-full .dxtn-hero-distance { animation: dxtn-detail-float 5.8s ease-in-out infinite alternate; }
.dxtn-private-route-app.dxtn-motion-full .dxtn-vehicle-visual span { animation: dxtn-studio-glow 4.8s ease-in-out infinite alternate; }
@keyframes dxtn-ambient-breathe { to { opacity: .62; transform: translate3d(-18px,12px,0) scale(1.04); } }
@keyframes dxtn-detail-float { to { transform: translate3d(0,-7px,0); } }
@keyframes dxtn-studio-glow { to { opacity: .62; transform: scale(1.08); } }

/* Header, scroll progress and timeline. */
.dxtn-site-header.dxtn-header-sticky .dxtn-header-inner { transition: min-height .35s var(--dxtn-ease),padding .35s var(--dxtn-ease); }
.dxtn-site-header.dxtn-header-sticky.is-shrunk .dxtn-header-inner { min-height: 64px; }
.dxtn-site-header.dxtn-header-sticky .dxtn-brand-mark { transition: transform .35s var(--dxtn-ease); }
.dxtn-site-header.dxtn-header-sticky.is-shrunk .dxtn-brand-mark { transform: scale(.88); }
.dxtn-motion-profile-dynamic .dxtn-scroll-progress span { box-shadow: 0 0 16px color-mix(in srgb,var(--dxtn-accent) 55%,transparent); }
.dxtn-process.has-motion-track { position: relative; }
.dxtn-process.has-motion-track::after {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 26px;
	width: 2px;
	background: linear-gradient(to bottom,var(--dxtn-accent) calc(var(--dxtn-timeline-progress) * 100%),transparent 0);
	content: "";
	opacity: .45;
	pointer-events: none;
}
.dxtn-process.has-motion-track li { position: relative; z-index: 1; }
.dxtn-process.has-motion-track li > span { position: relative; }
.dxtn-process.has-motion-track li > span::before {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var(--dxtn-accent);
	content: "";
	opacity: .25;
	transform: translate(-50%,-50%) scale(.7);
	transition: .45s var(--dxtn-ease);
}
.dxtn-process.has-motion-track li.is-revealed > span::before { opacity: .9; transform: translate(-50%,-50%) scale(1); box-shadow: 0 0 0 5px color-mix(in srgb,var(--dxtn-accent) 13%,transparent); }

/* Card and image interactions. */
.dxtn-native-v2 .dxtn-native-v2-media,
.dxtn-approved :is(.dxtn-approved-main-media,.dxtn-approved-card-media,.dxtn-approved-thumb,.dxtn-approved-destination-media,.dxtn-approved-price-media,.dxtn-approved-guide-media) { contain: paint; backface-visibility: hidden; }
.dxtn-native-v2 .dxtn-native-v2-media img,
.dxtn-approved :is(.dxtn-approved-main-media,.dxtn-approved-card-media,.dxtn-approved-thumb,.dxtn-approved-destination-media,.dxtn-approved-price-media,.dxtn-approved-guide-media) img {
	backface-visibility: hidden;
	transition: transform .88s cubic-bezier(.2,.65,.2,1),filter .5s ease;
}
.dxtn-approved .dxtn-approved-faq-list details > p { animation: dxtn-approved-faq-in .32s cubic-bezier(.2,.65,.2,1) both; }
@keyframes dxtn-approved-faq-in { from { opacity: 0; transform: translate3d(0,-7px,0); } to { opacity: 1; transform: translate3d(0,0,0); } }
@media (hover:hover) and (pointer:fine) {
	.dxtn-private-route-app[data-dxtn-hover-motion="lift"] :is(.dxtn-fare-card,.dxtn-benefit-row article,.dxtn-related-list a,.dxtn-n2-benefit-card,.dxtn-n2-price-card,.dxtn-n2-review-card,.dxtn-n3-facts article,.dxtn-approved-feature,.dxtn-approved-route-card,.dxtn-approved-fleet-card):hover {
		transform: translate3d(0,-5px,0);
		box-shadow: 0 24px 64px rgba(15,27,41,.1);
	}
	.dxtn-private-route-app[data-dxtn-hover-motion="zoom"] :is(.dxtn-hero-image,.dxtn-native-v2-media,.dxtn-approved-main-media,.dxtn-approved-card-media):hover img { transform: scale(1.04); }
	.dxtn-private-route-app[data-dxtn-hover-motion="glow"] :is(.dxtn-fare-card,.dxtn-service-grid article,.dxtn-n2-price-card,.dxtn-approved-feature):hover {
		border-color: color-mix(in srgb,var(--dxtn-accent) 72%,transparent);
		box-shadow: 0 18px 64px color-mix(in srgb,var(--dxtn-accent) 18%,transparent);
	}
}

/* Safety modes. */
.dxtn-private-route-app.dxtn-motion-mobile-guard [data-dxtn-depth],
.dxtn-private-route-app.dxtn-motion-mobile-guard [data-dxtn-section-parallax],
.dxtn-private-route-app.dxtn-motion-off [data-dxtn-section-parallax] { transform: none !important; transition: none !important; will-change: auto; }
.dxtn-private-route-app.dxtn-motion-mobile-guard :is(.dxtn-hero-ambient,.dxtn-hero-distance,.dxtn-vehicle-visual span) { animation: none !important; }
.dxtn-private-route-app.dxtn-motion-mobile-guard [data-dxtn-reveal] { --dxtn-motion-distance: 16px; }
.dxtn-private-route-app.dxtn-motion-off [data-dxtn-reveal][data-dxtn-motion-active="0"],
.dxtn-private-route-app.dxtn-motion-off .dxtn-hero-copy > *,
.dxtn-private-route-app.dxtn-motion-off .dxtn-hero-media,
.dxtn-private-route-app[data-dxtn-motion-runtime="reduced"] :is([data-dxtn-reveal],.dxtn-hero-copy > *,.dxtn-hero-media) {
	opacity: 1 !important;
	clip-path: none !important;
	transform: none !important;
	transition: none !important;
	animation: none !important;
}
@media (max-width:900px) {
	.dxtn-process.has-motion-track::after { display: none; }
	.dxtn-private-route-app[data-dxtn-reduce-mobile="1"] [data-dxtn-section-parallax] { transform: none !important; transition: none !important; will-change: auto; }
	.dxtn-private-route-app[data-dxtn-image-motion="parallax"] .dxtn-hero-image img,
	.dxtn-private-route-app[data-dxtn-image-motion="cinematic"] .dxtn-hero-image img { transform: scale(1.015); }
}
@media (prefers-reduced-motion:reduce) {
	.dxtn-ls-private-body:not(.dxtn-motion-preview-force) .dxtn-private-route-app :is(.dxtn-hero-copy > *,.dxtn-hero-media,[data-dxtn-reveal],[data-dxtn-depth],[data-dxtn-section-parallax],.dxtn-hero-image,.dxtn-hero-image img) {
		opacity: 1 !important;
		clip-path: none !important;
		transform: none !important;
		transition: none !important;
		animation: none !important;
		will-change: auto !important;
	}
	.dxtn-ls-private-body:not(.dxtn-motion-preview-force) .dxtn-process.has-motion-track::after { display: none !important; }
}
