/*==============================================================
  01 — AIRPORT TRANSFERS HERO — LOCKED DESIGN V2
  Page: /airport-transfers/
  Scope: #lux-airport-hero
==============================================================*/


/*--------------------------------------------------------------
  01.1 — FOUNDATION
--------------------------------------------------------------*/

#lux-airport-hero,
#lux-airport-hero *,
#lux-airport-hero *::before,
#lux-airport-hero *::after {
	box-sizing: border-box;
}

#lux-airport-hero {
	--lux-at-ivory: #f7f3eb;
	--lux-at-champagne: #e1c582;
	--lux-at-muted: rgba(247, 243, 235, 0.78);
	--lux-at-dark: #101113;
	--lux-at-image-position: 63% center;

	position: relative !important;
	isolation: isolate;

	display: block !important;
	width: 100% !important;
	max-width: none !important;

	/*
	 * The locked desktop mockup uses a tall cinematic Hero.
	 * It intentionally extends below shorter laptop viewports.
	 */
	min-height: 1100px;

	margin: 0 !important;
	padding: 0 !important;

	overflow: hidden;
	overflow: clip;

	background: var(--lux-at-dark) !important;
	color: var(--lux-at-ivory);

	-webkit-tap-highlight-color: transparent;
}

#lux-airport-hero > .e-con-inner {
	width: 100% !important;
	max-width: none !important;

	margin: 0 !important;
	padding: 0 !important;
}

#lux-airport-hero :is(h1, h2, h3, h4, p) {
	margin: 0;
}


/*--------------------------------------------------------------
  01.2 — FULL-BLEED IMAGE
--------------------------------------------------------------*/

#lux-airport-hero .lux-airport-hero__media {
	position: absolute !important;
	inset: 0 !important;
	z-index: 0;

	display: block !important;

	width: 100% !important;
	max-width: none !important;
	height: 100% !important;
	min-height: 100% !important;

	margin: 0 !important;
	padding: 0 !important;

	overflow: hidden;
	pointer-events: none;
}

#lux-airport-hero .lux-airport-hero__media > .e-con-inner {
	width: 100% !important;
	max-width: none !important;
	height: 100% !important;

	margin: 0 !important;
	padding: 0 !important;
}

#lux-airport-hero .lux-airport-hero__image,
#lux-airport-hero .lux-airport-hero__image .elementor-widget-container,
#lux-airport-hero .lux-airport-hero__image a,
#lux-airport-hero .lux-airport-hero__image picture {
	display: block !important;

	width: 100% !important;
	height: 100% !important;

	margin: 0 !important;
	padding: 0 !important;
}

#lux-airport-hero .lux-airport-hero__image img {
	display: block;

	width: 100% !important;
	height: 100% !important;
	min-height: 100% !important;

	margin: 0 !important;

	object-fit: cover;
	object-position: var(--lux-at-image-position);

	-webkit-transform: scale(1.002);
	transform: scale(1.002);
}


/*--------------------------------------------------------------
  01.3 — BALANCED CINEMATIC OVERLAY
--------------------------------------------------------------*/

#lux-airport-hero::before,
#lux-airport-hero::after {
	content: "";

	position: absolute;
	inset: 0;

	pointer-events: none;
}

/*
 * Lighter than V1:
 * strong enough behind the words, but keeps the chauffeur,
 * passenger, sky and vehicle clearly visible.
 */
#lux-airport-hero::before {
	z-index: 1;

	background:
		linear-gradient(
			90deg,
			rgba(7, 8, 9, 0.84) 0%,
			rgba(7, 8, 9, 0.75) 25%,
			rgba(7, 8, 9, 0.49) 50%,
			rgba(7, 8, 9, 0.20) 76%,
			rgba(7, 8, 9, 0.07) 100%
		),
		linear-gradient(
			180deg,
			rgba(7, 8, 9, 0.22) 0%,
			rgba(7, 8, 9, 0.02) 46%,
			rgba(7, 8, 9, 0.39) 100%
		);
}

#lux-airport-hero::after {
	z-index: 2;

	background:
		radial-gradient(
			circle at 80% 31%,
			rgba(225, 197, 130, 0.055) 0%,
			transparent 42%
		);

	box-shadow:
		inset 0 -1px 0 rgba(225, 197, 130, 0.28),
		inset 0 1px 0 rgba(255, 255, 255, 0.03);
}


/*--------------------------------------------------------------
  01.4 — FULL-WIDTH CONTENT SHELL
--------------------------------------------------------------*/

#lux-airport-hero .lux-airport-hero__shell {
	position: relative !important;
	z-index: 3;

	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	justify-content: flex-start !important;
	gap: 0 !important;

	width: 100% !important;
	max-width: none !important;
	min-height: 1100px;

	margin: 0 !important;

	/*
	 * Approximately 35px matches the locked PC composition.
	 */
	padding: 245px 36px 70px !important;
}

#lux-airport-hero .lux-airport-hero__shell > .e-con-inner {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	justify-content: flex-start !important;
	gap: 0 !important;

	width: 100% !important;
	max-width: none !important;

	margin: 0 !important;
	padding: 0 !important;
}


/*--------------------------------------------------------------
  01.5 — EYEBROW AND LEADING LINE
--------------------------------------------------------------*/

#lux-airport-hero .lux-airport-hero__eyebrow {
	width: auto !important;
	max-width: 100% !important;

	margin: 0 !important;
}

#lux-airport-hero
	.lux-airport-hero__eyebrow
	.elementor-widget-container {
	display: flex !important;
	align-items: center;
	justify-content: flex-start;
	gap: 18px;

	width: auto !important;
}

/* Short champagne line shown in the locked design. */
#lux-airport-hero
	.lux-airport-hero__eyebrow
	.elementor-widget-container::before {
	content: "";

	flex: 0 0 64px;

	display: block;

	width: 64px;
	height: 1px;

	background: var(--lux-at-champagne);
}

#lux-airport-hero
	.lux-airport-hero__eyebrow
	.elementor-heading-title {
	color: var(--lux-at-champagne) !important;

	font-family: "Manrope", Arial, sans-serif !important;
	font-size: 14px !important;
	font-weight: 650 !important;
	line-height: 1.35 !important;
	letter-spacing: 0.205em !important;
	text-transform: uppercase;

	text-shadow: 0 2px 15px rgba(0, 0, 0, 0.28);
}


/*--------------------------------------------------------------
  01.6 — MAIN HEADING
--------------------------------------------------------------*/

#lux-airport-hero .lux-airport-hero__title {
	width: 100% !important;
	max-width: none !important;

	margin: 31px 0 0 !important;
}

#lux-airport-hero
	.lux-airport-hero__title
	.elementor-widget-container {
	width: 100% !important;
	max-width: none !important;
}

#lux-airport-hero
	.lux-airport-hero__title
	.elementor-heading-title {
	width: auto;
	max-width: 980px;

	color: var(--lux-at-ivory) !important;

	font-family: "Cinzel", Georgia, "Times New Roman", serif !important;
	font-size: clamp(84px, 5.45vw, 105px) !important;
	font-weight: 500 !important;
	line-height: 1.07 !important;
	letter-spacing: -0.04em !important;
	text-transform: uppercase;

	white-space: normal;
	text-wrap: wrap;

	text-shadow:
		0 3px 17px rgba(0, 0, 0, 0.32),
		0 13px 45px rgba(0, 0, 0, 0.15);
}


/*--------------------------------------------------------------
  01.7 — DESCRIPTION
--------------------------------------------------------------*/

#lux-airport-hero .lux-airport-hero__description {
	width: min(100%, 970px) !important;
	max-width: 970px !important;

	margin: 45px 0 0 !important;
}

#lux-airport-hero
	.lux-airport-hero__description
	.elementor-widget-container {
	color: var(--lux-at-muted) !important;

	font-family: "Manrope", Arial, sans-serif !important;
	font-size: clamp(19px, 1.35vw, 25px) !important;
	font-weight: 400 !important;
	line-height: 1.58 !important;
	letter-spacing: -0.018em !important;

	text-shadow: 0 2px 15px rgba(0, 0, 0, 0.24);
}

#lux-airport-hero
	.lux-airport-hero__description
	p {
	color: inherit !important;
	font: inherit !important;
	letter-spacing: inherit !important;
}

#lux-airport-hero
	.lux-airport-hero__description
	p:last-child {
	margin-bottom: 0 !important;
}


/*--------------------------------------------------------------
  01.8 — ASSURANCE ROW
--------------------------------------------------------------*/

#lux-airport-hero .lux-airport-hero__assurances {
	display: flex !important;
	flex-flow: row wrap !important;
	align-items: center !important;
	justify-content: flex-start !important;
	gap: 14px 34px !important;

	width: min(100%, 930px) !important;
	max-width: 930px !important;

	margin: 33px 0 0 !important;
	padding: 0 !important;
}

#lux-airport-hero
	.lux-airport-hero__assurances
	> .e-con-inner {
	display: flex !important;
	flex-flow: row wrap !important;
	align-items: center !important;
	justify-content: flex-start !important;
	gap: 14px 34px !important;

	width: 100% !important;
	max-width: none !important;

	margin: 0 !important;
	padding: 0 !important;
}

#lux-airport-hero .lux-airport-hero__assurance {
	position: relative;

	flex: 0 0 auto !important;

	width: auto !important;
	max-width: 100% !important;

	margin: 0 !important;
	padding: 0 0 0 23px !important;
}

#lux-airport-hero .lux-airport-hero__assurance::before {
	content: "";

	position: absolute;
	top: 50%;
	left: 2px;

	width: 7px;
	height: 7px;

	border: 1px solid var(--lux-at-champagne);

	transform: translateY(-50%) rotate(45deg);
}

#lux-airport-hero
	.lux-airport-hero__assurance
	.elementor-heading-title,
#lux-airport-hero
	.lux-airport-hero__assurance
	.elementor-widget-container {
	color: rgba(247, 243, 235, 0.82) !important;

	font-family: "Manrope", Arial, sans-serif !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	line-height: 1.45 !important;
	letter-spacing: 0.07em !important;
	text-transform: uppercase;
}


/*--------------------------------------------------------------
  01.9 — EXPLORE CUE
--------------------------------------------------------------*/

#lux-airport-hero .lux-airport-hero__explore {
	width: auto !important;
	max-width: 100% !important;

	margin: 52px 0 0 !important;
}

#lux-airport-hero
	.lux-airport-hero__explore
	.elementor-widget-container,
#lux-airport-hero
	.lux-airport-hero__explore
	.elementor-button-wrapper {
	width: auto !important;
}

#lux-airport-hero
	.lux-airport-hero__explore
	.elementor-button {
	display: inline-flex !important;
	align-items: center;
	justify-content: flex-start;
	gap: 19px;

	width: auto !important;
	min-width: 0 !important;

	margin: 0 !important;
	padding: 10px 0 !important;

	border: 0 !important;
	border-radius: 0 !important;

	background: transparent !important;
	box-shadow: none !important;

	color: rgba(247, 243, 235, 0.77) !important;

	font-family: "Manrope", Arial, sans-serif !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	line-height: 1.35 !important;
	letter-spacing: 0.16em !important;
	text-transform: uppercase;

	transition:
		color 280ms ease,
		transform 280ms ease !important;
}

/* Horizontal line before the Explore text. */
#lux-airport-hero
	.lux-airport-hero__explore
	.elementor-button::before {
	content: "";

	flex: 0 0 64px;

	display: block;

	width: 64px;
	height: 1px;

	background: rgba(247, 243, 235, 0.58);

	transition:
		width 360ms cubic-bezier(0.22, 1, 0.36, 1),
		background-color 280ms ease;
}

#lux-airport-hero
	.lux-airport-hero__explore
	.elementor-button::after {
	display: none !important;
}


/*--------------------------------------------------------------
  01.10 — DESKTOP BOOK NOW
--------------------------------------------------------------*/

#lux-airport-hero .lux-airport-hero__book {
	position: absolute !important;
	right: 36px;
	bottom: 62px;

	width: 320px !important;
	max-width: calc(100% - 72px) !important;

	margin: 0 !important;
}

#lux-airport-hero
	.lux-airport-hero__book
	.elementor-widget-container,
#lux-airport-hero
	.lux-airport-hero__book
	.elementor-button-wrapper {
	width: 100% !important;
}

#lux-airport-hero
	.lux-airport-hero__book
	.elementor-button {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	gap: 13px;

	width: 100% !important;
	min-width: 0 !important;
	min-height: 68px;

	margin: 0 !important;
	padding: 18px 28px !important;

	border: 1px solid rgba(225, 197, 130, 0.78) !important;
	border-radius: 12px !important;

	background:
		linear-gradient(
			135deg,
			rgba(29, 23, 25, 0.53),
			rgba(10, 10, 11, 0.29)
		) !important;

	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.09),
		inset 0 -1px 0 rgba(255, 255, 255, 0.018),
		0 18px 48px rgba(0, 0, 0, 0.17) !important;

	color: var(--lux-at-champagne) !important;

	font-family: "Manrope", Arial, sans-serif !important;
	font-size: 16px !important;
	font-weight: 650 !important;
	line-height: 1.3 !important;
	letter-spacing: 0.16em !important;
	text-transform: uppercase;

	backdrop-filter: blur(14px) saturate(120%);
	-webkit-backdrop-filter: blur(14px) saturate(120%);

	transition:
		color 300ms ease,
		background-color 300ms ease,
		border-color 300ms ease,
		transform 300ms ease,
		box-shadow 300ms ease !important;
}


/*--------------------------------------------------------------
  01.11 — INTERACTION STATES
--------------------------------------------------------------*/

@media (hover: hover) and (pointer: fine) {

	#lux-airport-hero
		.lux-airport-hero__explore
		.elementor-button:hover {
		color: var(--lux-at-champagne) !important;
		transform: translateX(3px);
	}

	#lux-airport-hero
		.lux-airport-hero__explore
		.elementor-button:hover::before {
		width: 76px;
		background: var(--lux-at-champagne);
	}

	#lux-airport-hero
		.lux-airport-hero__book
		.elementor-button:hover {
		border-color: var(--lux-at-champagne) !important;
		background: var(--lux-at-champagne) !important;
		color: #111214 !important;

		transform: translateY(-2px);

		box-shadow:
			0 17px 44px rgba(0, 0, 0, 0.24),
			inset 0 1px 0 rgba(255, 255, 255, 0.14) !important;
	}
}

#lux-airport-hero
	:is(
		.lux-airport-hero__explore,
		.lux-airport-hero__book
	)
	.elementor-button:focus {
	outline: none !important;
}

#lux-airport-hero
	:is(
		.lux-airport-hero__explore,
		.lux-airport-hero__book
	)
	.elementor-button:focus-visible {
	outline: 2px solid var(--lux-at-champagne) !important;
	outline-offset: 5px;
}

#lux-airport-hero
	.lux-airport-hero__book
	.elementor-button:active {
	background: rgba(225, 197, 130, 0.92) !important;
	color: #111214 !important;

	transform: translateY(0);
}


/*==============================================================
  01.12 — LAPTOP / SMALL DESKTOP
==============================================================*/

@media (min-width: 1025px) and (max-width: 1439px) {

	#lux-airport-hero {
		--lux-at-image-position: 64% center;

		min-height: 940px;
	}

	#lux-airport-hero .lux-airport-hero__shell {
		min-height: 940px;

		padding: 190px 32px 58px !important;
	}

	#lux-airport-hero
		.lux-airport-hero__title
		.elementor-heading-title {
		max-width: 820px;

		font-size: clamp(70px, 6vw, 87px) !important;
		line-height: 1.055 !important;
	}

	#lux-airport-hero .lux-airport-hero__description {
		max-width: 760px !important;

		margin-top: 34px !important;
	}

	#lux-airport-hero
		.lux-airport-hero__description
		.elementor-widget-container {
		font-size: clamp(18px, 1.5vw, 21px) !important;
	}

	#lux-airport-hero .lux-airport-hero__assurances {
		margin-top: 27px !important;
	}

	#lux-airport-hero .lux-airport-hero__explore {
		margin-top: 39px !important;
	}

	#lux-airport-hero .lux-airport-hero__book {
		right: 32px;
		bottom: 48px;

		width: 286px !important;
	}

	#lux-airport-hero
		.lux-airport-hero__book
		.elementor-button {
		min-height: 62px;

		padding: 16px 24px !important;

		font-size: 14px !important;
	}
}


/*==============================================================
  01.13 — TABLET
==============================================================*/

@media (min-width: 768px) and (max-width: 1024px) {

	#lux-airport-hero {
		--lux-at-image-position: 66% center;

		min-height: 900px;
	}

	#lux-airport-hero::before {
		background:
			linear-gradient(
				90deg,
				rgba(7, 8, 9, 0.84) 0%,
				rgba(7, 8, 9, 0.69) 48%,
				rgba(7, 8, 9, 0.26) 100%
			),
			linear-gradient(
				180deg,
				rgba(7, 8, 9, 0.22) 0%,
				rgba(7, 8, 9, 0.04) 42%,
				rgba(7, 8, 9, 0.55) 100%
			);
	}

	#lux-airport-hero .lux-airport-hero__shell {
		min-height: 900px;

		padding: 175px 28px 50px !important;
	}

	#lux-airport-hero
		.lux-airport-hero__title
		.elementor-heading-title {
		max-width: 720px;

		font-size: clamp(63px, 8.2vw, 78px) !important;
		line-height: 1.04 !important;
	}

	#lux-airport-hero .lux-airport-hero__description {
		max-width: 680px !important;

		margin-top: 30px !important;
	}

	#lux-airport-hero
		.lux-airport-hero__description
		.elementor-widget-container {
		font-size: 18px !important;
	}

	#lux-airport-hero .lux-airport-hero__assurances {
		margin-top: 25px !important;
	}

	#lux-airport-hero .lux-airport-hero__explore {
		margin-top: 35px !important;
	}

	#lux-airport-hero .lux-airport-hero__book {
		position: static !important;

		width: 280px !important;
		max-width: 100% !important;

		margin: 20px 0 0 !important;
	}

	#lux-airport-hero
		.lux-airport-hero__book
		.elementor-button {
		min-height: 58px;

		border-radius: 9px !important;

		font-size: 13px !important;
	}
}


/*==============================================================
  01.14 — MOBILE
  Uses stable document positioning instead of vertical centring.
  This prevents content jumping when the browser bar changes.
==============================================================*/

@media (max-width: 767px) {

	#lux-airport-hero {
		--lux-at-image-position: 67% center;

		/*
		 * Deliberately avoids 100vh / 100dvh here.
		 * The mobile browser controls can therefore change
		 * without re-centring or moving the Hero content.
		 */
		min-height: 800px;
		height: auto;
	}

	#lux-airport-hero::before {
		background:
			linear-gradient(
				90deg,
				rgba(7, 8, 9, 0.82) 0%,
				rgba(7, 8, 9, 0.65) 56%,
				rgba(7, 8, 9, 0.37) 100%
			),
			linear-gradient(
				180deg,
				rgba(7, 8, 9, 0.17) 0%,
				rgba(7, 8, 9, 0.06) 42%,
				rgba(7, 8, 9, 0.68) 100%
			);
	}

	#lux-airport-hero::after {
		background:
			radial-gradient(
				circle at 80% 29%,
				rgba(225, 197, 130, 0.045),
				transparent 42%
			);
	}

	#lux-airport-hero .lux-airport-hero__shell {
		justify-content: flex-start !important;

		width: 100% !important;
		min-height: 800px;

		/*
		 * Stable top spacing for the overlaid mobile header.
		 * It does not depend on the changing viewport height.
		 */
		padding: 200px 24px 44px !important;
	}

	#lux-airport-hero
		.lux-airport-hero__eyebrow
		.elementor-widget-container {
		gap: 0;
	}

	#lux-airport-hero
		.lux-airport-hero__eyebrow
		.elementor-widget-container::before {
		display: none;
	}

	#lux-airport-hero
		.lux-airport-hero__eyebrow
		.elementor-heading-title {
		font-size: 11px !important;
		line-height: 1.4 !important;
		letter-spacing: 0.18em !important;
	}

	#lux-airport-hero .lux-airport-hero__title {
		margin-top: 18px !important;
	}

	/*
	 * Remove the desktop <br> line breaks.
	 * Mobile then wraps naturally according to its width.
	 */
	#lux-airport-hero
		.lux-airport-hero__title
		.elementor-heading-title
		br {
		display: none !important;
	}

	#lux-airport-hero
		.lux-airport-hero__title
		.elementor-heading-title {
		width: 100%;
		max-width: 620px;

		font-size: clamp(43px, 12.8vw, 58px) !important;
		line-height: 0.99 !important;
		letter-spacing: -0.042em !important;
		text-transform: none;

		text-wrap: pretty;
	}

	#lux-airport-hero .lux-airport-hero__description {
		width: 100% !important;
		max-width: 570px !important;

		margin-top: 24px !important;
	}

	#lux-airport-hero
		.lux-airport-hero__description
		.elementor-widget-container {
		font-size: clamp(15px, 4.25vw, 17px) !important;
		line-height: 1.55 !important;
		letter-spacing: -0.014em !important;
	}

	#lux-airport-hero .lux-airport-hero__assurances,
	#lux-airport-hero
		.lux-airport-hero__assurances
		> .e-con-inner {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) !important;
		gap: 11px !important;

		width: 100% !important;
		max-width: none !important;
	}

	#lux-airport-hero .lux-airport-hero__assurances {
		margin-top: 23px !important;
	}

	#lux-airport-hero .lux-airport-hero__assurance {
		width: 100% !important;

		padding-left: 21px !important;
	}

	#lux-airport-hero .lux-airport-hero__assurance::before {
		width: 6px;
		height: 6px;
	}

	#lux-airport-hero
		.lux-airport-hero__assurance
		.elementor-heading-title,
	#lux-airport-hero
		.lux-airport-hero__assurance
		.elementor-widget-container {
		font-size: 13px !important;
		line-height: 1.42 !important;
		letter-spacing: 0 !important;
		text-transform: none;
	}

	#lux-airport-hero .lux-airport-hero__explore {
		width: 100% !important;

		margin-top: 30px !important;
	}

	#lux-airport-hero
		.lux-airport-hero__explore
		.elementor-widget-container,
	#lux-airport-hero
		.lux-airport-hero__explore
		.elementor-button-wrapper {
		width: 100% !important;
	}

	#lux-airport-hero
		.lux-airport-hero__explore
		.elementor-button {
		gap: 14px;

		font-size: 11px !important;
		letter-spacing: 0.14em !important;
	}

	#lux-airport-hero
		.lux-airport-hero__explore
		.elementor-button::before {
		flex-basis: 44px;

		width: 44px;
	}

	#lux-airport-hero .lux-airport-hero__book {
		position: static !important;

		width: min(100%, 330px) !important;
		max-width: 330px !important;

		margin: 21px 0 0 !important;
	}

	#lux-airport-hero
		.lux-airport-hero__book
		.elementor-widget-container,
	#lux-airport-hero
		.lux-airport-hero__book
		.elementor-button-wrapper {
		width: 100% !important;
	}

	#lux-airport-hero
		.lux-airport-hero__book
		.elementor-button {
		width: 100% !important;
		min-height: 55px;

		padding: 15px 20px !important;

		border-radius: 7px !important;

		font-size: 12px !important;
		letter-spacing: 0.14em !important;
	}
}


/*==============================================================
  01.15 — SMALL MOBILE
==============================================================*/

@media (max-width: 380px) {

	#lux-airport-hero {
		--lux-at-image-position: 68% center;

		min-height: 830px;
	}

	#lux-airport-hero .lux-airport-hero__shell {
		min-height: 830px;

		padding: 190px 20px 40px !important;
	}

	#lux-airport-hero
		.lux-airport-hero__title
		.elementor-heading-title {
		font-size: clamp(41px, 12.6vw, 48px) !important;
	}

	#lux-airport-hero
		.lux-airport-hero__description
		.elementor-widget-container {
		font-size: 15px !important;
	}

	#lux-airport-hero
		.lux-airport-hero__assurance
		.elementor-heading-title,
	#lux-airport-hero
		.lux-airport-hero__assurance
		.elementor-widget-container {
		font-size: 12.5px !important;
	}
}


/*==============================================================
  01.16 — PHONE LANDSCAPE
==============================================================*/

@media
	(max-width: 900px)
	and (orientation: landscape)
	and (max-height: 600px) {

	#lux-airport-hero {
		min-height: 720px;
	}

	#lux-airport-hero .lux-airport-hero__shell {
		min-height: 720px;

		padding: 138px 28px 40px !important;
	}

	#lux-airport-hero
		.lux-airport-hero__title
		.elementor-heading-title
		br {
		display: none !important;
	}

	#lux-airport-hero
		.lux-airport-hero__title
		.elementor-heading-title {
		max-width: 720px;

		font-size: clamp(47px, 7vw, 60px) !important;
		line-height: 1 !important;
		text-transform: none;
	}

	#lux-airport-hero .lux-airport-hero__description {
		max-width: 670px !important;

		margin-top: 19px !important;
	}

	#lux-airport-hero
		.lux-airport-hero__description
		.elementor-widget-container {
		font-size: 15px !important;
		line-height: 1.48 !important;
	}

	#lux-airport-hero .lux-airport-hero__assurances {
		margin-top: 18px !important;
	}

	#lux-airport-hero .lux-airport-hero__explore {
		margin-top: 22px !important;
	}

	#lux-airport-hero .lux-airport-hero__book {
		width: 270px !important;

		margin-top: 15px !important;
	}
}


/*==============================================================
  01.17 — SAFARI / IPHONE STABILITY
==============================================================*/

@supports (-webkit-touch-callout: none) {

	#lux-airport-hero .lux-airport-hero__image img,
	#lux-airport-hero
		.lux-airport-hero__book
		.elementor-button {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
	}

	#lux-airport-hero
		.lux-airport-hero__book
		.elementor-button {
		-webkit-backface-visibility: hidden;
		backface-visibility: hidden;
	}
}


/*==============================================================
  01.18 — REDUCED MOTION
==============================================================*/

@media (prefers-reduced-motion: reduce) {

	#lux-airport-hero *,
	#lux-airport-hero *::before,
	#lux-airport-hero *::after {
		scroll-behavior: auto !important;
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
	}

	#lux-airport-hero
		.lux-airport-hero__explore
		.elementor-button:hover {
		transform: none !important;
	}

	#lux-airport-hero
		.lux-airport-hero__book
		.elementor-button:hover {
		transform: none !important;
	}
}
/*==============================================================
  01 — AIRPORT TRANSFERS HERO — WHITE TEXT / LIGHTER OVERLAY PATCH
  Add this at the VERY BOTTOM of airport-transfers.css
==============================================================*/

#lux-airport-hero {
	--lux-at-ivory: #ffffff;
	--lux-at-muted: rgba(255, 255, 255, 0.90);
	--lux-at-image-position: 63% center;
}

/* Lighter overlay */
#lux-airport-hero::before {
	background:
		linear-gradient(
			90deg,
			rgba(7, 8, 9, 0.76) 0%,
			rgba(7, 8, 9, 0.64) 25%,
			rgba(7, 8, 9, 0.38) 50%,
			rgba(7, 8, 9, 0.14) 76%,
			rgba(7, 8, 9, 0.04) 100%
		),
		linear-gradient(
			180deg,
			rgba(7, 8, 9, 0.16) 0%,
			rgba(7, 8, 9, 0.02) 46%,
			rgba(7, 8, 9, 0.30) 100%
		) !important;
}

/* Make ALL hero texts pure white + subtle dark blur shadow */
#lux-airport-hero .lux-airport-hero__eyebrow .elementor-heading-title,
#lux-airport-hero .lux-airport-hero__title .elementor-heading-title,
#lux-airport-hero .lux-airport-hero__description,
#lux-airport-hero .lux-airport-hero__description .elementor-widget-container,
#lux-airport-hero .lux-airport-hero__description p,
#lux-airport-hero .lux-airport-hero__assurance .elementor-heading-title,
#lux-airport-hero .lux-airport-hero__assurance .elementor-widget-container,
#lux-airport-hero .lux-airport-hero__explore .elementor-button,
#lux-airport-hero .lux-airport-hero__book .elementor-button {
	color: #ffffff !important;
	text-shadow:
		0 2px 12px rgba(0, 0, 0, 0.34),
		0 0 18px rgba(0, 0, 0, 0.12) !important;
}

/* Keep decorative line / cue / little shapes white too */
#lux-airport-hero .lux-airport-hero__eyebrow .elementor-widget-container::before,
#lux-airport-hero .lux-airport-hero__explore .elementor-button::before {
	background: rgba(255, 255, 255, 0.78) !important;
}

#lux-airport-hero .lux-airport-hero__assurance::before {
	border-color: rgba(255, 255, 255, 0.82) !important;
}

/* Desktop + mobile button: white text in normal state */
#lux-airport-hero .lux-airport-hero__book .elementor-button {
	color: #ffffff !important;
	border-color: rgba(255, 255, 255, 0.72) !important;
	background:
		linear-gradient(
			135deg,
			rgba(24, 24, 26, 0.52),
			rgba(10, 10, 12, 0.30)
		) !important;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.08),
		inset 0 -1px 0 rgba(255, 255, 255, 0.02),
		0 14px 34px rgba(0, 0, 0, 0.18) !important;
}

/* Hover = white fill, black text */
@media (hover: hover) and (pointer: fine) {
	#lux-airport-hero .lux-airport-hero__book .elementor-button:hover {
		background: #ffffff !important;
		border-color: #ffffff !important;
		color: #111214 !important;
		text-shadow: none !important;
	}
}

/* Click / tap = white fill, black text */
#lux-airport-hero .lux-airport-hero__book .elementor-button:active,
#lux-airport-hero .lux-airport-hero__book .elementor-button:focus:active {
	background: #ffffff !important;
	border-color: #ffffff !important;
	color: #111214 !important;
	text-shadow: none !important;
}

/* Explore text hover */
@media (hover: hover) and (pointer: fine) {
	#lux-airport-hero .lux-airport-hero__explore .elementor-button:hover {
		color: #ffffff !important;
	}
	#lux-airport-hero .lux-airport-hero__explore .elementor-button:hover::before {
		background: #ffffff !important;
	}
}

/* Mobile: lighter overlay + better framing so both people show a bit more */
@media (max-width: 767px) {
	#lux-airport-hero {
		--lux-at-image-position: 60% center;
	}

	#lux-airport-hero::before {
		background:
			linear-gradient(
				90deg,
				rgba(7, 8, 9, 0.74) 0%,
				rgba(7, 8, 9, 0.58) 56%,
				rgba(7, 8, 9, 0.28) 100%
			),
			linear-gradient(
				180deg,
				rgba(7, 8, 9, 0.14) 0%,
				rgba(7, 8, 9, 0.04) 42%,
				rgba(7, 8, 9, 0.52) 100%
			) !important;
	}
}
/*==============================================================
  AIRPORT HERO — CONTENT POSITION REFINEMENT
==============================================================*/

/* Large desktop */
@media (min-width: 1440px) {
	#lux-airport-hero .lux-airport-hero__shell {
		padding-top: 220px !important;
	}
}

/* Laptop / small desktop */
@media (min-width: 1025px) and (max-width: 1439px) {
	#lux-airport-hero .lux-airport-hero__shell {
		padding-top: 165px !important;
	}
}

/* Tablet */
@media (min-width: 768px) and (max-width: 1024px) {
	#lux-airport-hero .lux-airport-hero__shell {
		padding-top: 150px !important;
	}
}

/* Mobile */
@media (max-width: 767px) {
	#lux-airport-hero .lux-airport-hero__shell {
		padding-top: 175px !important;
	}
}

/* Small mobile */
@media (max-width: 380px) {
	#lux-airport-hero .lux-airport-hero__shell {
		padding-top: 168px !important;
	}
}

/*======================================================================
  02 — A CONSIDERED WELCOME — FINAL CONSOLIDATED VERSION
  Page: /airport-transfers/
  Scope: #lux-at-experience
======================================================================*/

#lux-at-experience,
#lux-at-experience *,
#lux-at-experience *::before,
#lux-at-experience *::after {
	box-sizing: border-box;
}

#lux-at-experience {
	--lux-exp-paper: #f8f5ef;
	--lux-exp-ink: #1d1918;
	--lux-exp-body: #7c7571;
	--lux-exp-rose: #b0445e;
	--lux-exp-rose-soft: rgba(176, 68, 94, 0.27);
	--lux-exp-line: rgba(29, 25, 24, 0.16);
	--lux-exp-shell: 1824px;

	position: relative !important;
	isolation: isolate;
	display: block !important;

	width: 100% !important;
	max-width: none !important;

	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden;

	background: var(--lux-exp-paper) !important;
	color: var(--lux-exp-ink);

	-webkit-tap-highlight-color: transparent;
}

#lux-at-experience > .e-con-inner {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

#lux-at-experience :is(h1, h2, h3, h4, p) {
	margin: 0;
}

/*----------------------------------------------------------------------
  02.1 — MAIN SHELL
----------------------------------------------------------------------*/

#lux-at-experience .lux-at-experience__shell {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	gap: 0 !important;

	width: min(calc(100% - 72px), var(--lux-exp-shell)) !important;
	max-width: var(--lux-exp-shell) !important;

	margin: 0 auto !important;
	padding: 0 0 clamp(110px, 8vw, 155px) !important;
}

#lux-at-experience .lux-at-experience__shell > .e-con-inner {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	gap: 0 !important;

	width: 100% !important;
	max-width: none !important;

	margin: 0 !important;
	padding: 0 !important;
}

/*----------------------------------------------------------------------
  02.2 — INTRODUCTION GRID
----------------------------------------------------------------------*/

#lux-at-experience .lux-at-experience__intro,
#lux-at-experience .lux-at-experience__intro > .e-con-inner {
	display: grid !important;
	grid-template-columns: minmax(420px, 560px) minmax(0, 1fr) !important;
	column-gap: clamp(170px, 15vw, 330px) !important;
	row-gap: 0 !important;
	align-items: start !important;

	width: 100% !important;
	max-width: none !important;

	margin: 0 !important;
	padding: clamp(150px, 10vw, 190px) 0 clamp(105px, 7vw, 140px) !important;
}

/*----------------------------------------------------------------------
  02.3 — LEFT EDITORIAL ASIDE
----------------------------------------------------------------------*/

#lux-at-experience .lux-at-experience__aside,
#lux-at-experience .lux-at-experience__aside > .e-con-inner {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	gap: 0 !important;

	width: 100% !important;
	max-width: 560px !important;

	margin: 0 !important;
	padding: 0 !important;
}

#lux-at-experience .lux-at-experience__number {
	width: auto !important;
	max-width: 100% !important;
	margin: 0 !important;
}

#lux-at-experience .lux-at-experience__number .elementor-heading-title {
	color: transparent !important;
	-webkit-text-fill-color: transparent !important;

	font-family: "Cinzel", Georgia, "Times New Roman", serif !important;
	font-size: clamp(96px, 7.2vw, 138px) !important;
	font-weight: 400 !important;
	line-height: 0.86 !important;
	letter-spacing: -0.075em !important;

	-webkit-text-stroke: 1px var(--lux-exp-rose-soft);
	text-shadow: none !important;
}

#lux-at-experience .lux-at-experience__aside-text {
	width: 100% !important;
	max-width: 520px !important;
	margin: clamp(25px, 2vw, 35px) 0 0 !important;
}

#lux-at-experience .lux-at-experience__aside-text .elementor-widget-container,
#lux-at-experience .lux-at-experience__aside-text p {
	color: var(--lux-exp-body) !important;
	-webkit-text-fill-color: var(--lux-exp-body) !important;

	font-family: "Manrope", Arial, sans-serif !important;
	font-size: clamp(17px, 1.12vw, 20px) !important;
	font-weight: 400 !important;
	line-height: 1.78 !important;
	letter-spacing: -0.018em !important;
}

#lux-at-experience .lux-at-experience__aside-text p:last-child {
	margin-bottom: 0 !important;
}

/*----------------------------------------------------------------------
  02.4 — ARRIVAL BUTTON
----------------------------------------------------------------------*/

#lux-at-experience .lux-at-experience__button {
	width: min(100%, 370px) !important;
	max-width: 370px !important;
	margin: clamp(24px, 2vw, 33px) 0 0 !important;
}

#lux-at-experience .lux-at-experience__button .elementor-widget-container,
#lux-at-experience .lux-at-experience__button .elementor-button-wrapper {
	width: 100% !important;
}

#lux-at-experience .lux-at-experience__button .elementor-button {
	position: relative;

	display: flex !important;
	align-items: center !important;
	justify-content: center !important;

	width: 100% !important;
	min-height: 70px;

	margin: 0 !important;
	padding: 18px 48px !important;

	border: 1px solid rgba(29, 25, 24, 0.92) !important;
	border-radius: 8px !important;

	background: transparent !important;
	box-shadow: none !important;

	color: var(--lux-exp-ink) !important;
	-webkit-text-fill-color: var(--lux-exp-ink) !important;

	font-family: "Manrope", Arial, sans-serif !important;
	font-size: 13px !important;
	font-weight: 650 !important;
	line-height: 1.3 !important;
	letter-spacing: 0.17em !important;
	text-align: center !important;
	text-transform: uppercase;

	transition:
		color 320ms ease,
		background-color 320ms ease,
		border-color 320ms ease,
		transform 320ms ease,
		box-shadow 320ms ease !important;
}

#lux-at-experience .lux-at-experience__button .elementor-button-content-wrapper {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	text-align: center !important;
}

#lux-at-experience .lux-at-experience__button .elementor-button-text {
	display: block;
	width: 100%;
	text-align: center !important;
}

#lux-at-experience .lux-at-experience__button .elementor-button-icon {
	position: absolute;
	top: 50%;
	right: 22px;

	display: inline-flex;
	align-items: center;
	justify-content: center;

	margin: 0 !important;
	color: inherit !important;
	font-size: 16px;

	transform: translateY(-50%);
	transition: transform 320ms cubic-bezier(0.22, 1, 0.36, 1);
}

/*----------------------------------------------------------------------
  02.5 — RIGHT MAIN CONTENT
----------------------------------------------------------------------*/

#lux-at-experience .lux-at-experience__main,
#lux-at-experience .lux-at-experience__main > .e-con-inner {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	gap: 0 !important;

	width: 100% !important;
	max-width: 1010px !important;

	margin: 0 !important;
	padding: 0 !important;
}

#lux-at-experience .lux-at-experience__main {
	padding-top: 8px !important;
}

#lux-at-experience .lux-at-experience__eyebrow {
	width: auto !important;
	max-width: 100% !important;
	margin: 0 !important;
}

#lux-at-experience .lux-at-experience__eyebrow .elementor-heading-title {
	color: var(--lux-exp-rose) !important;
	-webkit-text-fill-color: var(--lux-exp-rose) !important;

	font-family: "Manrope", Arial, sans-serif !important;
	font-size: 13px !important;
	font-weight: 650 !important;
	line-height: 1.4 !important;
	letter-spacing: 0.245em !important;
	text-transform: uppercase;
}

/*----------------------------------------------------------------------
  02.6 — MAIN TITLE
----------------------------------------------------------------------*/

#lux-at-experience .lux-at-experience__title {
	position: relative;
	display: block;

	width: 100% !important;
	max-width: 1000px !important;

	margin: 0 !important;
}

#lux-at-experience
	.lux-at-experience__title
	.elementor-widget-container {
	display: block;

	width: 100% !important;

	margin: 0 !important;
	padding: 0 !important;
}

#lux-at-experience
	.lux-at-experience__title
	.elementor-heading-title,
#lux-at-experience
	#lux-at-experience-title {
	display: block;

	width: 100% !important;
	max-width: 1000px !important;

	margin: 0 !important;
	padding: 0 !important;

	color: #1d1918 !important;
	-webkit-text-fill-color: #1d1918 !important;

	font-family: "Cinzel", Georgia, "Times New Roman", serif !important;
	font-size: clamp(68px, 5.1vw, 98px) !important;
	font-weight: 400 !important;
	line-height: 1.05 !important;
	letter-spacing: -0.025em !important;
	word-spacing: 0.12em !important;
	text-transform: uppercase;

	text-shadow: none !important;
	text-wrap: balance;
}

#lux-at-experience .lux-at-experience__description {
	width: 100% !important;
	max-width: 1000px !important;
	margin: clamp(35px, 2.8vw, 51px) 0 0 !important;
}

#lux-at-experience .lux-at-experience__description .elementor-widget-container,
#lux-at-experience .lux-at-experience__description p {
	color: var(--lux-exp-body) !important;
	-webkit-text-fill-color: var(--lux-exp-body) !important;

	font-family: "Manrope", Arial, sans-serif !important;
	font-size: clamp(20px, 1.45vw, 27px) !important;
	font-weight: 400 !important;
	line-height: 1.68 !important;
	letter-spacing: -0.027em !important;
}

#lux-at-experience .lux-at-experience__description p:last-child {
	margin-bottom: 0 !important;
}

/*----------------------------------------------------------------------
  02.7 — PROMISE GRID
----------------------------------------------------------------------*/

#lux-at-experience .lux-at-experience__promise-grid,
#lux-at-experience .lux-at-experience__promise-grid > .e-con-inner {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: 0 !important;
	align-items: stretch !important;

	width: 100% !important;
	max-width: none !important;

	margin: 0 !important;
	padding: 0 !important;
}

#lux-at-experience .lux-at-experience__promise-grid {
	border-top: 1px solid var(--lux-exp-line);
	border-bottom: 1px solid var(--lux-exp-line);
}

#lux-at-experience .lux-at-experience__promise,
#lux-at-experience .lux-at-experience__promise > .e-con-inner {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	justify-content: flex-start !important;
	gap: 0 !important;

	width: 100% !important;
	min-width: 0 !important;

	margin: 0 !important;
}

#lux-at-experience .lux-at-experience__promise {
	min-height: 364px;

	padding:
		clamp(47px, 3.5vw, 61px)
		clamp(30px, 2.35vw, 43px)
		clamp(42px, 3vw, 55px) !important;

	background: transparent !important;
}

#lux-at-experience .lux-at-experience__promise > .e-con-inner {
	max-width: none !important;
	min-height: 100%;
	padding: 0 !important;
}

#lux-at-experience .lux-at-experience__promise--welcome,
#lux-at-experience .lux-at-experience__promise--time,
#lux-at-experience .lux-at-experience__promise--journey {
	border-left: 1px solid var(--lux-exp-line);
}

/*----------------------------------------------------------------------
  02.8 — PROMISE CONTENT
----------------------------------------------------------------------*/

#lux-at-experience .lux-at-experience__promise-icon {
	width: auto !important;
	max-width: 100% !important;
	margin: 0 !important;
}

#lux-at-experience .lux-at-experience__promise-icon .elementor-widget-container {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	width: auto !important;
}

#lux-at-experience .lux-at-experience__promise-icon .elementor-icon {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;

	width: 48px;
	height: 48px;
	padding: 0 !important;

	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;

	color: var(--lux-exp-rose) !important;
	font-size: 43px !important;
	line-height: 1 !important;
}

#lux-at-experience .lux-at-experience__promise-icon .elementor-icon svg {
	display: block;
	width: 43px !important;
	height: 43px !important;
	fill: none;
	color: inherit;
}

#lux-at-experience .lux-at-experience__promise-icon .elementor-icon svg * {
	stroke: currentColor;
}

#lux-at-experience .lux-at-experience__promise-title {
	width: 100% !important;
	max-width: 100% !important;
	margin: clamp(48px, 3.2vw, 61px) 0 0 !important;
}

#lux-at-experience .lux-at-experience__promise-title .elementor-heading-title {
	color: var(--lux-exp-ink) !important;
	-webkit-text-fill-color: var(--lux-exp-ink) !important;

	font-family: "Cinzel", Georgia, "Times New Roman", serif !important;
	font-size: clamp(21px, 1.45vw, 28px) !important;
	font-weight: 400 !important;
	line-height: 1.3 !important;
	letter-spacing: -0.025em !important;
	text-transform: uppercase;
}

#lux-at-experience .lux-at-experience__promise-text {
	width: 100% !important;
	max-width: 360px !important;
	margin: clamp(20px, 1.55vw, 27px) 0 0 !important;
}

#lux-at-experience .lux-at-experience__promise-text .elementor-widget-container,
#lux-at-experience .lux-at-experience__promise-text p {
	color: var(--lux-exp-body) !important;
	-webkit-text-fill-color: var(--lux-exp-body) !important;

	font-family: "Manrope", Arial, sans-serif !important;
	font-size: clamp(16px, 1.08vw, 20px) !important;
	font-weight: 400 !important;
	line-height: 1.68 !important;
	letter-spacing: -0.018em !important;
}

#lux-at-experience .lux-at-experience__promise-text p:last-child {
	margin-bottom: 0 !important;
}

/*----------------------------------------------------------------------
  02.9 — INTERACTIONS
----------------------------------------------------------------------*/

@media (hover: hover) and (pointer: fine) {
	#lux-at-experience .lux-at-experience__button .elementor-button:hover {
		border-color: var(--lux-exp-ink) !important;
		background: var(--lux-exp-ink) !important;
		color: #ffffff !important;
		-webkit-text-fill-color: #ffffff !important;
		transform: translateY(-2px);
		box-shadow: 0 15px 35px rgba(29, 25, 24, 0.13) !important;
	}

	#lux-at-experience .lux-at-experience__button .elementor-button:hover .elementor-button-icon {
		transform: translate(4px, calc(-50% - 4px));
	}

	#lux-at-experience .lux-at-experience__promise-icon .elementor-icon {
		transition: transform 320ms cubic-bezier(0.22, 1, 0.36, 1);
	}

	#lux-at-experience .lux-at-experience__promise:hover .lux-at-experience__promise-icon .elementor-icon {
		transform: translateY(-3px);
	}
}

#lux-at-experience .lux-at-experience__button .elementor-button:focus {
	outline: none !important;
}

#lux-at-experience .lux-at-experience__button .elementor-button:focus-visible {
	outline: 2px solid var(--lux-exp-rose) !important;
	outline-offset: 5px;
}

#lux-at-experience .lux-at-experience__button .elementor-button:active {
	border-color: var(--lux-exp-ink) !important;
	background: var(--lux-exp-ink) !important;
	color: #ffffff !important;
	-webkit-text-fill-color: #ffffff !important;
	transform: translateY(0);
}

/*======================================================================
  02.10 — LAPTOP
======================================================================*/

@media (min-width: 1201px) and (max-width: 1536px) {
	#lux-at-experience .lux-at-experience__shell {
		width: min(calc(100% - 64px), 1460px) !important;
	}

	#lux-at-experience .lux-at-experience__intro,
	#lux-at-experience .lux-at-experience__intro > .e-con-inner {
		grid-template-columns: minmax(350px, 455px) minmax(0, 1fr) !important;
		column-gap: clamp(110px, 10vw, 190px) !important;
		padding-top: 135px !important;
		padding-bottom: 105px !important;
	}

	#lux-at-experience .lux-at-experience__title .elementor-heading-title,
	#lux-at-experience #lux-at-experience-title {
		font-size: clamp(64px, 5.3vw, 82px) !important;
	}

	#lux-at-experience .lux-at-experience__description .elementor-widget-container,
	#lux-at-experience .lux-at-experience__description p {
		font-size: clamp(19px, 1.55vw, 23px) !important;
	}

	#lux-at-experience .lux-at-experience__promise {
		min-height: 340px;
		padding: 48px clamp(24px, 2vw, 34px) 43px !important;
	}

	#lux-at-experience .lux-at-experience__promise-title .elementor-heading-title {
		font-size: clamp(20px, 1.55vw, 24px) !important;
	}

	#lux-at-experience .lux-at-experience__promise-text .elementor-widget-container,
	#lux-at-experience .lux-at-experience__promise-text p {
		font-size: clamp(15px, 1.12vw, 18px) !important;
	}
}

/*======================================================================
  02.11 — SMALL LAPTOP
======================================================================*/

@media (min-width: 1025px) and (max-width: 1200px) {
	#lux-at-experience .lux-at-experience__shell {
		width: calc(100% - 56px) !important;
	}

	#lux-at-experience .lux-at-experience__intro,
	#lux-at-experience .lux-at-experience__intro > .e-con-inner {
		grid-template-columns: minmax(300px, 380px) minmax(0, 1fr) !important;
		column-gap: 80px !important;
		padding-top: 120px !important;
		padding-bottom: 90px !important;
	}

	#lux-at-experience .lux-at-experience__number .elementor-heading-title {
		font-size: 100px !important;
	}

	#lux-at-experience .lux-at-experience__title .elementor-heading-title,
	#lux-at-experience #lux-at-experience-title {
		font-size: clamp(57px, 5.7vw, 70px) !important;
	}

	#lux-at-experience .lux-at-experience__description .elementor-widget-container,
	#lux-at-experience .lux-at-experience__description p {
		font-size: 19px !important;
	}

	#lux-at-experience .lux-at-experience__promise {
		min-height: 330px;
		padding: 43px 24px 39px !important;
	}
}

/*======================================================================
  02.12 — TABLET
======================================================================*/

@media (min-width: 768px) and (max-width: 1024px) {
	#lux-at-experience .lux-at-experience__shell {
		width: calc(100% - 48px) !important;
		padding-bottom: 105px !important;
	}

	#lux-at-experience .lux-at-experience__intro,
	#lux-at-experience .lux-at-experience__intro > .e-con-inner {
		display: flex !important;
		flex-direction: column !important;
		padding: 105px 0 85px !important;
	}

	#lux-at-experience .lux-at-experience__main {
		order: 1;
		max-width: 780px !important;
		padding-top: 0 !important;
	}

	#lux-at-experience .lux-at-experience__aside {
		order: 2;
		display: grid !important;
		grid-template-columns: 170px minmax(0, 1fr) !important;
		column-gap: 36px !important;
		row-gap: 22px !important;
		max-width: 760px !important;
		margin-top: 70px !important;
	}

	#lux-at-experience .lux-at-experience__aside > .e-con-inner {
		display: contents !important;
	}

	#lux-at-experience .lux-at-experience__number {
		grid-column: 1;
		grid-row: 1 / span 2;
	}

	#lux-at-experience .lux-at-experience__number .elementor-heading-title {
		font-size: 110px !important;
	}

	#lux-at-experience .lux-at-experience__aside-text {
		grid-column: 2;
		grid-row: 1;
		margin-top: 0 !important;
	}

	#lux-at-experience .lux-at-experience__button {
		grid-column: 2;
		grid-row: 2;
		width: min(100%, 360px) !important;
		max-width: 360px !important;
		margin-top: 0 !important;
	}

	#lux-at-experience .lux-at-experience__title {
		margin-top: 32px !important;
	}

	#lux-at-experience .lux-at-experience__title .elementor-heading-title,
	#lux-at-experience #lux-at-experience-title {
		font-size: clamp(61px, 8.2vw, 78px) !important;
	}

	#lux-at-experience .lux-at-experience__description .elementor-widget-container,
	#lux-at-experience .lux-at-experience__description p {
		font-size: clamp(19px, 2.35vw, 23px) !important;
	}

	#lux-at-experience .lux-at-experience__promise-grid,
	#lux-at-experience .lux-at-experience__promise-grid > .e-con-inner {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	#lux-at-experience .lux-at-experience__promise {
		min-height: 330px;
		padding: 45px 35px 42px !important;
	}

	#lux-at-experience .lux-at-experience__promise--time {
		border-left: 0;
		border-top: 1px solid var(--lux-exp-line);
	}

	#lux-at-experience .lux-at-experience__promise--journey {
		border-top: 1px solid var(--lux-exp-line);
	}

	#lux-at-experience .lux-at-experience__promise-title .elementor-heading-title {
		font-size: clamp(22px, 2.8vw, 27px) !important;
	}

	#lux-at-experience .lux-at-experience__promise-text {
		max-width: 390px !important;
	}

	#lux-at-experience .lux-at-experience__promise-text .elementor-widget-container,
	#lux-at-experience .lux-at-experience__promise-text p {
		font-size: 17px !important;
	}
}

/*======================================================================
  02.13 — MOBILE
======================================================================*/

@media (max-width: 767px) {
	#lux-at-experience .lux-at-experience__shell {
		width: calc(100% - 32px) !important;
		padding-bottom: 78px !important;
	}

	#lux-at-experience .lux-at-experience__intro,
	#lux-at-experience .lux-at-experience__intro > .e-con-inner {
		display: flex !important;
		flex-direction: column !important;
		padding: 76px 0 68px !important;
	}

	#lux-at-experience .lux-at-experience__main {
		order: 1;
		width: 100% !important;
		max-width: none !important;
		padding-top: 0 !important;
	}

	#lux-at-experience .lux-at-experience__aside {
		order: 2;
		width: 100% !important;
		max-width: none !important;
		margin-top: 56px !important;
	}

	#lux-at-experience .lux-at-experience__eyebrow .elementor-heading-title {
		font-size: 11px !important;
		line-height: 1.45 !important;
		letter-spacing: 0.21em !important;
	}

	#lux-at-experience .lux-at-experience__title {
		margin-top: 28px !important;
	}

	#lux-at-experience .lux-at-experience__title .elementor-heading-title,
	#lux-at-experience #lux-at-experience-title {
		font-size: clamp(46px, 12.4vw, 65px) !important;
		line-height: 1.02 !important;
		letter-spacing: -0.05em !important;
	}

	#lux-at-experience .lux-at-experience__description {
		margin-top: 28px !important;
	}

	#lux-at-experience .lux-at-experience__description .elementor-widget-container,
	#lux-at-experience .lux-at-experience__description p {
		font-size: clamp(17px, 4.45vw, 20px) !important;
		line-height: 1.62 !important;
		letter-spacing: -0.022em !important;
	}

	#lux-at-experience .lux-at-experience__number .elementor-heading-title {
		font-size: 100px !important;
		line-height: 0.88 !important;
	}

	#lux-at-experience .lux-at-experience__aside-text {
		max-width: 560px !important;
		margin-top: 25px !important;
	}

	#lux-at-experience .lux-at-experience__aside-text .elementor-widget-container,
	#lux-at-experience .lux-at-experience__aside-text p {
		font-size: 16px !important;
		line-height: 1.7 !important;
	}

	#lux-at-experience .lux-at-experience__button {
		width: min(100%, 330px) !important;
		max-width: 330px !important;
		margin: 26px auto 0 !important;
	}

	#lux-at-experience .lux-at-experience__button .elementor-button {
		width: 100% !important;
		min-height: 64px;
		padding: 17px 45px !important;
		border-radius: 7px !important;
		font-size: 12.5px !important;
		line-height: 1.35 !important;
		letter-spacing: 0.13em !important;
		text-align: center !important;
	}

	#lux-at-experience .lux-at-experience__button .elementor-button-icon {
		right: 19px;
	}

	#lux-at-experience .lux-at-experience__promise-grid,
	#lux-at-experience .lux-at-experience__promise-grid > .e-con-inner {
		grid-template-columns: minmax(0, 1fr) !important;
	}

	#lux-at-experience .lux-at-experience__promise {
		min-height: 0;
		padding: 44px 22px 42px !important;
	}

	#lux-at-experience .lux-at-experience__promise--welcome,
	#lux-at-experience .lux-at-experience__promise--time,
	#lux-at-experience .lux-at-experience__promise--journey {
		border-left: 0;
		border-top: 1px solid var(--lux-exp-line);
	}

	#lux-at-experience .lux-at-experience__promise-icon .elementor-icon {
		width: 43px;
		height: 43px;
		font-size: 39px !important;
	}

	#lux-at-experience .lux-at-experience__promise-icon .elementor-icon svg {
		width: 39px !important;
		height: 39px !important;
	}

	#lux-at-experience .lux-at-experience__promise-title {
		margin-top: 34px !important;
	}

	#lux-at-experience .lux-at-experience__promise-title .elementor-heading-title {
		font-size: clamp(22px, 6.4vw, 28px) !important;
		line-height: 1.3 !important;
	}

	#lux-at-experience .lux-at-experience__promise-text {
		max-width: 520px !important;
		margin-top: 17px !important;
	}

	#lux-at-experience .lux-at-experience__promise-text .elementor-widget-container,
	#lux-at-experience .lux-at-experience__promise-text p {
		font-size: 16px !important;
		line-height: 1.65 !important;
	}
}

/*======================================================================
  02.14 — SMALL MOBILE
======================================================================*/

@media (max-width: 380px) {
	#lux-at-experience .lux-at-experience__shell {
		width: calc(100% - 28px) !important;
	}

	#lux-at-experience .lux-at-experience__intro,
	#lux-at-experience .lux-at-experience__intro > .e-con-inner {
		padding-top: 66px !important;
		padding-bottom: 60px !important;
	}

	#lux-at-experience .lux-at-experience__title .elementor-heading-title,
	#lux-at-experience #lux-at-experience-title {
		font-size: clamp(42px, 12vw, 51px) !important;
	}

	#lux-at-experience .lux-at-experience__description .elementor-widget-container,
	#lux-at-experience .lux-at-experience__description p {
		font-size: 16.5px !important;
	}

	#lux-at-experience .lux-at-experience__number .elementor-heading-title {
		font-size: 90px !important;
	}

	#lux-at-experience .lux-at-experience__button {
		width: min(100%, 310px) !important;
		max-width: 310px !important;
	}

	#lux-at-experience .lux-at-experience__button .elementor-button {
		padding-right: 40px !important;
		padding-left: 40px !important;
		font-size: 12px !important;
		letter-spacing: 0.115em !important;
	}

	#lux-at-experience .lux-at-experience__promise {
		padding-right: 19px !important;
		padding-left: 19px !important;
	}
}

/*======================================================================
  02.15 — PHONE LANDSCAPE
======================================================================*/

@media (max-width: 900px) and (orientation: landscape) and (max-height: 600px) {
	#lux-at-experience .lux-at-experience__shell {
		width: calc(100% - 48px) !important;
	}

	#lux-at-experience .lux-at-experience__intro,
	#lux-at-experience .lux-at-experience__intro > .e-con-inner {
		padding-top: 72px !important;
		padding-bottom: 65px !important;
	}

	#lux-at-experience .lux-at-experience__title .elementor-heading-title,
	#lux-at-experience #lux-at-experience-title {
		font-size: clamp(48px, 7.6vw, 64px) !important;
	}

	#lux-at-experience .lux-at-experience__description .elementor-widget-container,
	#lux-at-experience .lux-at-experience__description p {
		font-size: 17px !important;
	}

	#lux-at-experience .lux-at-experience__aside {
		margin-top: 45px !important;
	}
}

/*======================================================================
  02.16 — REDUCED MOTION
======================================================================*/

@media (prefers-reduced-motion: reduce) {
	#lux-at-experience *,
	#lux-at-experience *::before,
	#lux-at-experience *::after {
		scroll-behavior: auto !important;
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
	}

	#lux-at-experience .lux-at-experience__button .elementor-button:hover,
	#lux-at-experience .lux-at-experience__promise:hover .lux-at-experience__promise-icon .elementor-icon {
		transform: none !important;
	}
}
/*==============================================================
  SECTION 02 — TITLE WORD AND EYEBROW SPACING
==============================================================*/

/* Clear space between words such as YOUR ARRIVAL */
#lux-at-experience
	.lux-at-experience__title
	.elementor-heading-title,
#lux-at-experience
	#lux-at-experience-title {
	letter-spacing: -0.025em !important;
	word-spacing: 0.12em !important;
}

/* More breathing space below the eyebrow */
#lux-at-experience .lux-at-experience__title {
	margin-top: 52px !important;
}

/* Tablet */
@media (min-width: 768px) and (max-width: 1024px) {
	#lux-at-experience .lux-at-experience__title {
		margin-top: 42px !important;
	}
}

/* Mobile */
@media (max-width: 767px) {
	#lux-at-experience .lux-at-experience__title {
		margin-top: 36px !important;
	}

	#lux-at-experience
		.lux-at-experience__title
		.elementor-heading-title,
	#lux-at-experience
		#lux-at-experience-title {
		letter-spacing: -0.018em !important;
		word-spacing: 0.10em !important;
	}
}
/*==============================================================
  SECTION 02 — GUARANTEED EYEBROW SPACING
==============================================================*/

#lux-at-experience .lux-at-experience__eyebrow {
	margin: 0 !important;
	padding: 0 !important;
}

#lux-at-experience
	.lux-at-experience__eyebrow
	.elementor-widget-container {
	padding-bottom: 10px !important;
}

#lux-at-experience .lux-at-experience__title {
	margin-top: 0 !important;
}

/* Tablet */
@media (min-width: 768px) and (max-width: 1024px) {
	#lux-at-experience
		.lux-at-experience__eyebrow
		.elementor-widget-container {
		padding-bottom: 10px !important;
	}
}

/* Mobile */
@media (max-width: 767px) {
	#lux-at-experience
		.lux-at-experience__eyebrow
		.elementor-widget-container {
		padding-bottom: 10px !important;
	}
}
/*==============================================================
  SECTION 02 — ONE-TIME SOFT REVEAL ANIMATION
  Requires: /luxeline-pages/js/airport-transfers.js
==============================================================*/

#lux-at-experience.lux-at-reveal-ready .lux-at-reveal-item {
	opacity: 0;
	transform: translate3d(0, 28px, 0);

	transition:
		opacity 1050ms cubic-bezier(0.22, 1, 0.36, 1),
		transform 1050ms cubic-bezier(0.22, 1, 0.36, 1);

	transition-delay: var(--lux-at-reveal-delay, 0ms);

	will-change: opacity, transform;
}

#lux-at-experience.lux-at-reveal-ready
	.lux-at-reveal-item.is-revealed {
	opacity: 1;
	transform: translate3d(0, 0, 0);
}

#lux-at-experience.lux-at-reveal-ready
	.lux-at-experience__promise.lux-at-reveal-item {
	transform: translate3d(0, 22px, 0);
}

#lux-at-experience.lux-at-reveal-ready
	.lux-at-experience__promise.lux-at-reveal-item.is-revealed {
	transform: translate3d(0, 0, 0);
}

@media (max-width: 767px) {

	#lux-at-experience.lux-at-reveal-ready .lux-at-reveal-item {
		transform: translate3d(0, 20px, 0);
		transition-duration: 900ms;
	}

	#lux-at-experience.lux-at-reveal-ready
		.lux-at-reveal-item.is-revealed {
		transform: translate3d(0, 0, 0);
	}
}

@media (prefers-reduced-motion: reduce) {

	#lux-at-experience.lux-at-reveal-ready .lux-at-reveal-item,
	#lux-at-experience.lux-at-reveal-ready
		.lux-at-reveal-item.is-revealed {
		opacity: 1 !important;
		transform: none !important;
		transition: none !important;
		will-change: auto !important;
	}
}
/*======================================================================
  03 — THE ARRIVAL SEQUENCE
  Scope: #lux-at-arrival
  Responsive: desktop, laptop, iPad, iPhone, Android and Safari
======================================================================*/

#lux-at-arrival,
#lux-at-arrival *,
#lux-at-arrival *::before,
#lux-at-arrival *::after {
	box-sizing: border-box;
}

#lux-at-arrival {
	--lux-arrival-bg: #171315;
	--lux-arrival-panel: #1c1518;
	--lux-arrival-white: #ffffff;
	--lux-arrival-muted: rgba(255, 255, 255, 0.60);
	--lux-arrival-gold: #e1c582;
	--lux-arrival-rose: #b0445e;
	--lux-arrival-line: rgba(225, 197, 130, 0.30);
	--lux-arrival-shell: 1824px;

	position: relative !important;
	isolation: isolate;
	display: block !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden;
	background: var(--lux-arrival-bg) !important;
	color: var(--lux-arrival-white);
	-webkit-tap-highlight-color: transparent;
}

#lux-at-arrival > .e-con-inner {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

#lux-at-arrival :is(h1, h2, h3, h4, p) {
	margin: 0;
}


/*======================================================================
  MAIN SHELL
======================================================================*/

#lux-at-arrival .lux-at-arrival__shell,
#lux-at-arrival .lux-at-arrival__shell > .e-con-inner {
	display: grid !important;
	grid-template-columns: minmax(0, 0.94fr) minmax(0, 1.06fr) !important;
	column-gap: clamp(92px, 8vw, 165px) !important;
	align-items: start !important;

	width: min(calc(100% - 72px), var(--lux-arrival-shell)) !important;
	max-width: var(--lux-arrival-shell) !important;
	margin: 0 auto !important;
	padding: 0 !important;
}

#lux-at-arrival .lux-at-arrival__shell {
	padding-top: clamp(150px, 9vw, 185px) !important;
	padding-bottom: clamp(145px, 9vw, 190px) !important;
}


/*======================================================================
  JOURNEY PREVIEW
======================================================================*/

#lux-at-arrival .lux-at-arrival__preview {
	position: relative !important;
	display: flex !important;
	flex-direction: column !important;
	width: 100% !important;
	max-width: 820px !important;
	min-height: 840px;

	margin: 0 !important;
	padding: clamp(72px, 5vw, 84px) clamp(58px, 4.2vw, 76px) !important;
	overflow: hidden;

	border: 1px solid rgba(225, 197, 130, 0.34);
	border-radius: 42px;

	background:
		radial-gradient(circle at 64% 38%, rgba(176, 68, 94, 0.12), transparent 34%),
		linear-gradient(180deg, rgba(46, 27, 34, 0.42), rgba(17, 14, 16, 0.82) 56%, rgba(13, 11, 12, 0.96));

	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.025),
		0 28px 70px rgba(0, 0, 0, 0.16);
}

#lux-at-arrival .lux-at-arrival__preview::before {
	content: "";
	position: absolute;
	inset: 31px;
	z-index: 0;
	border: 1px solid rgba(255, 255, 255, 0.075);
	border-radius: 31px;
	pointer-events: none;
}

#lux-at-arrival .lux-at-arrival__preview > .e-con-inner {
	position: relative;
	z-index: 1;
	display: flex !important;
	flex-direction: column !important;
	width: 100% !important;
	max-width: none !important;
	min-height: 100%;
	margin: 0 !important;
	padding: 0 !important;
}


/*======================================================================
  FLIGHT CARD
======================================================================*/

#lux-at-arrival .lux-at-arrival__card,
#lux-at-arrival .lux-at-arrival__card > .e-con-inner {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	gap: 0 !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
}

#lux-at-arrival .lux-at-arrival__card {
	position: relative;
	z-index: 2;
	padding: clamp(38px, 3vw, 47px) clamp(34px, 2.7vw, 44px) !important;
	border: 1px solid rgba(255, 255, 255, 0.16);
	border-radius: 26px;
	background: linear-gradient(135deg, rgba(255, 255, 255, 0.075), rgba(255, 255, 255, 0.045));
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.035),
		0 22px 55px rgba(0, 0, 0, 0.12);
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
}

#lux-at-arrival .lux-at-arrival__card-top,
#lux-at-arrival .lux-at-arrival__card-top > .e-con-inner,
#lux-at-arrival .lux-at-arrival__card-bottom,
#lux-at-arrival .lux-at-arrival__card-bottom > .e-con-inner {
	display: flex !important;
	flex-direction: row !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 28px !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

#lux-at-arrival :is(.lux-at-arrival__preview-label, .lux-at-arrival__status-label) {
	width: auto !important;
	max-width: 100% !important;
	margin: 0 !important;
}

#lux-at-arrival :is(.lux-at-arrival__preview-label, .lux-at-arrival__status-label) .elementor-heading-title {
	color: var(--lux-arrival-gold) !important;
	-webkit-text-fill-color: var(--lux-arrival-gold) !important;
	font-family: "Manrope", Arial, sans-serif !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	line-height: 1.35 !important;
	letter-spacing: 0.15em !important;
	text-transform: uppercase;
}

#lux-at-arrival .lux-at-arrival__status-label .elementor-heading-title,
#lux-at-arrival .lux-at-arrival__card-status--prepared .elementor-heading-title {
	text-align: right;
}


/*======================================================================
  ROUTE ROW
======================================================================*/

#lux-at-arrival .lux-at-arrival__route,
#lux-at-arrival .lux-at-arrival__route > .e-con-inner {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) 64px minmax(0, 1fr) !important;
	column-gap: 25px !important;
	align-items: center !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

#lux-at-arrival .lux-at-arrival__route {
	margin-top: clamp(38px, 3vw, 48px) !important;
}

#lux-at-arrival :is(.lux-at-arrival__departure, .lux-at-arrival__destination),
#lux-at-arrival :is(.lux-at-arrival__departure, .lux-at-arrival__destination) > .e-con-inner {
	display: flex !important;
	flex-direction: column !important;
	gap: 0 !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

#lux-at-arrival .lux-at-arrival__departure,
#lux-at-arrival .lux-at-arrival__departure > .e-con-inner {
	align-items: flex-start !important;
}

#lux-at-arrival .lux-at-arrival__destination,
#lux-at-arrival .lux-at-arrival__destination > .e-con-inner {
	align-items: flex-end !important;
}

#lux-at-arrival .lux-at-arrival__code,
#lux-at-arrival .lux-at-arrival__location {
	width: auto !important;
	max-width: 100% !important;
	margin: 0 !important;
}

#lux-at-arrival .lux-at-arrival__code .elementor-heading-title {
	color: #ffffff !important;
	-webkit-text-fill-color: #ffffff !important;
	font-family: "Cinzel", Georgia, "Times New Roman", serif !important;
	font-size: clamp(54px, 4.1vw, 74px) !important;
	font-weight: 400 !important;
	line-height: 0.92 !important;
	letter-spacing: -0.045em !important;
	text-transform: uppercase;
	white-space: nowrap;
}

#lux-at-arrival .lux-at-arrival__code .elementor-heading-title span {
	display: inline-block;
	margin-left: 5px;
	color: var(--lux-arrival-muted) !important;
	-webkit-text-fill-color: var(--lux-arrival-muted) !important;
	font-family: "Manrope", Arial, sans-serif !important;
	font-size: 15px !important;
	font-weight: 400 !important;
	line-height: 1.2 !important;
	letter-spacing: 0.06em !important;
	text-transform: none;
	vertical-align: baseline;
}

#lux-at-arrival .lux-at-arrival__code--destination .elementor-heading-title,
#lux-at-arrival .lux-at-arrival__location--destination .elementor-heading-title {
	text-align: right;
}

#lux-at-arrival .lux-at-arrival__location {
	margin-top: 17px !important;
}

#lux-at-arrival .lux-at-arrival__location .elementor-heading-title {
	color: var(--lux-arrival-muted) !important;
	-webkit-text-fill-color: var(--lux-arrival-muted) !important;
	font-family: "Manrope", Arial, sans-serif !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	line-height: 1.35 !important;
	letter-spacing: 0.11em !important;
}

#lux-at-arrival .lux-at-arrival__route-icon {
	width: 64px !important;
	max-width: 64px !important;
	margin: 0 !important;
}

#lux-at-arrival .lux-at-arrival__route-icon .elementor-widget-container {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 64px !important;
	height: 64px;
}

#lux-at-arrival .lux-at-arrival__route-icon .elementor-icon {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	color: var(--lux-arrival-gold) !important;
	font-size: 43px !important;
	line-height: 1 !important;
}

#lux-at-arrival .lux-at-arrival__route-icon .elementor-icon svg {
	display: block;
	width: 43px !important;
	height: 43px !important;
	fill: none;
	color: inherit;
}

#lux-at-arrival .lux-at-arrival__route-icon .elementor-icon svg * {
	stroke: currentColor;
}


/*======================================================================
  DIVIDER + LOWER STATUS
======================================================================*/

#lux-at-arrival .lux-at-arrival__divider {
	width: 100% !important;
	margin: clamp(34px, 2.7vw, 44px) 0 0 !important;
}

#lux-at-arrival .lux-at-arrival__divider .elementor-divider {
	padding: 0 !important;
}

#lux-at-arrival .lux-at-arrival__divider .elementor-divider-separator {
	display: block !important;
	width: 100% !important;
	height: 3px;
	border: 0 !important;
	background:
		linear-gradient(
			90deg,
			var(--lux-arrival-rose) 0%,
			#c77d75 48%,
			var(--lux-arrival-gold) 72%,
			rgba(255, 255, 255, 0.14) 72%,
			rgba(255, 255, 255, 0.14) 100%
		);
	border-radius: 999px;
}

#lux-at-arrival .lux-at-arrival__card-bottom {
	margin-top: 29px !important;
}

#lux-at-arrival .lux-at-arrival__card-status {
	width: auto !important;
	max-width: 50% !important;
	margin: 0 !important;
}

#lux-at-arrival .lux-at-arrival__card-status .elementor-heading-title {
	color: var(--lux-arrival-muted) !important;
	-webkit-text-fill-color: var(--lux-arrival-muted) !important;
	font-family: "Manrope", Arial, sans-serif !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	line-height: 1.4 !important;
	letter-spacing: 0.03em !important;
	text-transform: uppercase;
}


/*======================================================================
  MOVING PLANE BADGE
======================================================================*/

#lux-at-arrival .lux-at-arrival__moving-plane {
	position: absolute !important;
	top: 56%;
	right: 19%;
	z-index: 3;
	width: 78px !important;
	height: 78px;
	margin: 0 !important;
}

#lux-at-arrival .lux-at-arrival__moving-plane .elementor-widget-container {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 78px !important;
	height: 78px;
	border-radius: 50%;
	background: linear-gradient(145deg, #efd58e, #d9b866);
	box-shadow:
		0 18px 45px rgba(0, 0, 0, 0.24),
		0 0 42px rgba(225, 197, 130, 0.11);
}

#lux-at-arrival .lux-at-arrival__moving-plane .elementor-icon {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	color: #2a2220 !important;
	font-size: 34px !important;
	line-height: 1 !important;
}

#lux-at-arrival .lux-at-arrival__moving-plane .elementor-icon svg {
	display: block;
	width: 34px !important;
	height: 34px !important;
	fill: none;
	color: inherit;
}

#lux-at-arrival .lux-at-arrival__moving-plane .elementor-icon svg * {
	stroke: currentColor;
}


/*======================================================================
  RIGHT CONTENT
======================================================================*/

#lux-at-arrival .lux-at-arrival__content,
#lux-at-arrival .lux-at-arrival__content > .e-con-inner {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	gap: 0 !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

#lux-at-arrival .lux-at-arrival__content {
	padding-top: 4px !important;
}

#lux-at-arrival .lux-at-arrival__eyebrow {
	width: auto !important;
	max-width: 100% !important;
	margin: 0 !important;
}

#lux-at-arrival .lux-at-arrival__eyebrow .elementor-heading-title {
	color: var(--lux-arrival-gold) !important;
	-webkit-text-fill-color: var(--lux-arrival-gold) !important;
	font-family: "Manrope", Arial, sans-serif !important;
	font-size: 13px !important;
	font-weight: 650 !important;
	line-height: 1.4 !important;
	letter-spacing: 0.23em !important;
	text-transform: uppercase;
}

#lux-at-arrival .lux-at-arrival__title {
	width: 100% !important;
	max-width: 900px !important;
	margin: 35px 0 0 !important;
}

#lux-at-arrival .lux-at-arrival__title .elementor-widget-container {
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

#lux-at-arrival .lux-at-arrival__title .elementor-heading-title,
#lux-at-arrival #lux-at-arrival-title {
	display: block;
	width: 100% !important;
	max-width: 900px !important;
	margin: 0 !important;
	padding: 0 !important;
	color: #ffffff !important;
	-webkit-text-fill-color: #ffffff !important;
	font-family: "Cinzel", Georgia, "Times New Roman", serif !important;
	font-size: clamp(70px, 5.25vw, 101px) !important;
	font-weight: 400 !important;
	line-height: 0.98 !important;
	letter-spacing: -0.047em !important;
	text-transform: uppercase;
	text-wrap: balance;
	text-shadow:
		0 3px 18px rgba(0, 0, 0, 0.28),
		0 0 24px rgba(0, 0, 0, 0.08);
}


/*======================================================================
  VERTICAL STEPS
======================================================================*/

#lux-at-arrival .lux-at-arrival__steps,
#lux-at-arrival .lux-at-arrival__steps > .e-con-inner {
	position: relative;
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	gap: 0 !important;
	width: 100% !important;
	max-width: 910px !important;
	margin: 0 !important;
	padding: 0 !important;
}

#lux-at-arrival .lux-at-arrival__steps {
	margin-top: clamp(67px, 5vw, 88px) !important;
}

#lux-at-arrival .lux-at-arrival__steps::before {
	content: "";
	position: absolute;
	top: 66px;
	bottom: 66px;
	left: 35px;
	z-index: 0;
	width: 1px;
	background: linear-gradient(180deg, rgba(225, 197, 130, 0.46), rgba(225, 197, 130, 0.18));
}

#lux-at-arrival .lux-at-arrival__step {
	position: relative;
	z-index: 1;
	display: grid !important;
	grid-template-columns: 72px minmax(0, 1fr) !important;
	column-gap: 31px !important;
	align-items: center !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

#lux-at-arrival .lux-at-arrival__step:not(:last-child) {
	margin-bottom: clamp(30px, 2.3vw, 43px) !important;
}

#lux-at-arrival .lux-at-arrival__step > .e-con-inner {
	display: contents !important;
}

#lux-at-arrival .lux-at-arrival__step-number {
	position: relative;
	z-index: 2;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 72px !important;
	height: 72px;
	margin: 0 !important;
	padding: 0 !important;
	border: 1px solid rgba(225, 197, 130, 0.45);
	border-radius: 50%;
	background: var(--lux-arrival-bg);
}

#lux-at-arrival .lux-at-arrival__step-number .elementor-widget-container {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100% !important;
	height: 100%;
}

#lux-at-arrival .lux-at-arrival__step-number .elementor-heading-title {
	color: var(--lux-arrival-gold) !important;
	-webkit-text-fill-color: var(--lux-arrival-gold) !important;
	font-family: "Cinzel", Georgia, "Times New Roman", serif !important;
	font-size: 17px !important;
	font-weight: 500 !important;
	line-height: 1 !important;
	letter-spacing: 0 !important;
}

#lux-at-arrival .lux-at-arrival__step-content,
#lux-at-arrival .lux-at-arrival__step-content > .e-con-inner {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	gap: 0 !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

#lux-at-arrival .lux-at-arrival__step-title {
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
}

#lux-at-arrival .lux-at-arrival__step-title .elementor-heading-title {
	color: #ffffff !important;
	-webkit-text-fill-color: #ffffff !important;
	font-family: "Cinzel", Georgia, "Times New Roman", serif !important;
	font-size: clamp(23px, 1.65vw, 31px) !important;
	font-weight: 400 !important;
	line-height: 1.22 !important;
	letter-spacing: -0.025em !important;
	text-transform: uppercase;
}

#lux-at-arrival .lux-at-arrival__step-text {
	width: 100% !important;
	max-width: 780px !important;
	margin: 15px 0 0 !important;
}

#lux-at-arrival .lux-at-arrival__step-text .elementor-widget-container,
#lux-at-arrival .lux-at-arrival__step-text p {
	color: var(--lux-arrival-muted) !important;
	-webkit-text-fill-color: var(--lux-arrival-muted) !important;
	font-family: "Manrope", Arial, sans-serif !important;
	font-size: clamp(15px, 1.06vw, 19px) !important;
	font-weight: 400 !important;
	line-height: 1.58 !important;
	letter-spacing: -0.018em !important;
}

#lux-at-arrival .lux-at-arrival__step-text p:last-child {
	margin-bottom: 0 !important;
}


/*======================================================================
  DESKTOP HOVER — NON-ESSENTIAL
======================================================================*/

@media (hover: hover) and (pointer: fine) {
	#lux-at-arrival .lux-at-arrival__card {
		transition:
			border-color 320ms ease,
			transform 320ms cubic-bezier(0.22, 1, 0.36, 1),
			box-shadow 320ms ease;
	}

	#lux-at-arrival .lux-at-arrival__preview:hover .lux-at-arrival__card {
		border-color: rgba(225, 197, 130, 0.28);
		transform: translateY(-3px);
		box-shadow:
			inset 0 1px 0 rgba(255, 255, 255, 0.04),
			0 28px 64px rgba(0, 0, 0, 0.17);
	}
}


/*======================================================================
  LAPTOP
======================================================================*/

@media (min-width: 1201px) and (max-width: 1536px) {
	#lux-at-arrival .lux-at-arrival__shell,
	#lux-at-arrival .lux-at-arrival__shell > .e-con-inner {
		width: min(calc(100% - 64px), 1460px) !important;
		column-gap: clamp(72px, 6vw, 105px) !important;
	}

	#lux-at-arrival .lux-at-arrival__shell {
		padding-top: 132px !important;
		padding-bottom: 142px !important;
	}

	#lux-at-arrival .lux-at-arrival__preview {
		min-height: 750px;
		padding: 64px 52px !important;
		border-radius: 34px;
	}

	#lux-at-arrival .lux-at-arrival__preview::before {
		inset: 27px;
		border-radius: 26px;
	}

	#lux-at-arrival .lux-at-arrival__card {
		padding: 37px 34px !important;
		border-radius: 23px;
	}

	#lux-at-arrival .lux-at-arrival__title .elementor-heading-title,
	#lux-at-arrival #lux-at-arrival-title {
		font-size: clamp(65px, 5.15vw, 82px) !important;
	}
}


/*======================================================================
  SMALL LAPTOP / TABLET LANDSCAPE
======================================================================*/

@media (min-width: 1025px) and (max-width: 1200px) {
	#lux-at-arrival .lux-at-arrival__shell,
	#lux-at-arrival .lux-at-arrival__shell > .e-con-inner {
		width: calc(100% - 56px) !important;
		grid-template-columns: minmax(0, 0.96fr) minmax(0, 1.04fr) !important;
		column-gap: 56px !important;
	}

	#lux-at-arrival .lux-at-arrival__shell {
		padding-top: 115px !important;
		padding-bottom: 125px !important;
	}

	#lux-at-arrival .lux-at-arrival__preview {
		min-height: 670px;
		padding: 54px 39px !important;
		border-radius: 30px;
	}

	#lux-at-arrival .lux-at-arrival__preview::before {
		inset: 23px;
		border-radius: 23px;
	}

	#lux-at-arrival .lux-at-arrival__card {
		padding: 32px 28px !important;
		border-radius: 20px;
	}

	#lux-at-arrival .lux-at-arrival__route,
	#lux-at-arrival .lux-at-arrival__route > .e-con-inner {
		grid-template-columns: minmax(0, 1fr) 52px minmax(0, 1fr) !important;
		column-gap: 17px !important;
	}

	#lux-at-arrival .lux-at-arrival__route-icon,
	#lux-at-arrival .lux-at-arrival__route-icon .elementor-widget-container {
		width: 52px !important;
		max-width: 52px !important;
	}

	#lux-at-arrival .lux-at-arrival__code .elementor-heading-title {
		font-size: clamp(45px, 4.4vw, 56px) !important;
	}

	#lux-at-arrival .lux-at-arrival__title .elementor-heading-title,
	#lux-at-arrival #lux-at-arrival-title {
		font-size: clamp(56px, 5.6vw, 67px) !important;
	}

	#lux-at-arrival .lux-at-arrival__step {
		grid-template-columns: 64px minmax(0, 1fr) !important;
		column-gap: 24px !important;
	}

	#lux-at-arrival .lux-at-arrival__step-number {
		width: 64px !important;
		height: 64px;
	}

	#lux-at-arrival .lux-at-arrival__steps::before {
		top: 60px;
		bottom: 60px;
		left: 31px;
	}
}


/*======================================================================
  IPAD / TABLET
======================================================================*/

@media (min-width: 768px) and (max-width: 1024px) {
	#lux-at-arrival .lux-at-arrival__shell,
	#lux-at-arrival .lux-at-arrival__shell > .e-con-inner {
		display: flex !important;
		flex-direction: column !important;
		gap: 0 !important;
		width: calc(100% - 48px) !important;
		max-width: 900px !important;
	}

	#lux-at-arrival .lux-at-arrival__shell {
		padding-top: 105px !important;
		padding-bottom: 115px !important;
	}

	#lux-at-arrival .lux-at-arrival__preview {
		width: 100% !important;
		max-width: 800px !important;
		min-height: 720px;
		margin: 0 auto !important;
		padding: 64px 54px !important;
		border-radius: 34px;
	}

	#lux-at-arrival .lux-at-arrival__content {
		width: 100% !important;
		max-width: 800px !important;
		margin: 92px auto 0 !important;
		padding-top: 0 !important;
	}

	#lux-at-arrival .lux-at-arrival__title .elementor-heading-title,
	#lux-at-arrival #lux-at-arrival-title {
		font-size: clamp(62px, 8.2vw, 78px) !important;
	}
}


/*======================================================================
  IPHONE / ANDROID
======================================================================*/

@media (max-width: 767px) {
	#lux-at-arrival .lux-at-arrival__shell,
	#lux-at-arrival .lux-at-arrival__shell > .e-con-inner {
		display: flex !important;
		flex-direction: column !important;
		gap: 0 !important;
		width: 100% !important;
		max-width: none !important;
		margin: 0 !important;
		padding-left: max(16px, env(safe-area-inset-left)) !important;
		padding-right: max(16px, env(safe-area-inset-right)) !important;
	}

	#lux-at-arrival .lux-at-arrival__shell {
		padding-top: 78px !important;
		padding-bottom: 88px !important;
	}

	#lux-at-arrival .lux-at-arrival__preview {
		width: 100% !important;
		max-width: 620px !important;
		min-height: 610px;
		margin: 0 auto !important;
		padding: 53px 24px !important;
		border-radius: 25px;
	}

	#lux-at-arrival .lux-at-arrival__preview::before {
		inset: 20px;
		border-radius: 20px;
	}

	#lux-at-arrival .lux-at-arrival__card {
		padding: 29px 22px !important;
		border-radius: 19px;
	}

	#lux-at-arrival :is(.lux-at-arrival__preview-label, .lux-at-arrival__status-label) .elementor-heading-title {
		font-size: 10px !important;
		letter-spacing: 0.13em !important;
	}

	#lux-at-arrival .lux-at-arrival__route,
	#lux-at-arrival .lux-at-arrival__route > .e-con-inner {
		grid-template-columns: minmax(0, 1fr) 42px minmax(0, 1fr) !important;
		column-gap: 11px !important;
	}

	#lux-at-arrival .lux-at-arrival__route {
		margin-top: 32px !important;
	}

	#lux-at-arrival .lux-at-arrival__code .elementor-heading-title {
		font-size: clamp(39px, 12vw, 54px) !important;
	}

	#lux-at-arrival .lux-at-arrival__code .elementor-heading-title span {
		display: block;
		margin: 5px 0 0;
		font-size: 11px !important;
	}

	#lux-at-arrival .lux-at-arrival__location {
		margin-top: 12px !important;
	}

	#lux-at-arrival .lux-at-arrival__location .elementor-heading-title {
		font-size: 11px !important;
		letter-spacing: 0.08em !important;
	}

	#lux-at-arrival .lux-at-arrival__route-icon,
	#lux-at-arrival .lux-at-arrival__route-icon .elementor-widget-container {
		width: 42px !important;
		max-width: 42px !important;
		height: 42px;
	}

	#lux-at-arrival .lux-at-arrival__route-icon .elementor-icon {
		width: 36px;
		height: 36px;
		font-size: 29px !important;
	}

	#lux-at-arrival .lux-at-arrival__route-icon .elementor-icon svg {
		width: 29px !important;
		height: 29px !important;
	}

	#lux-at-arrival .lux-at-arrival__card-bottom {
		margin-top: 23px !important;
		gap: 15px !important;
	}

	#lux-at-arrival .lux-at-arrival__card-status .elementor-heading-title {
		font-size: 9.5px !important;
		line-height: 1.35 !important;
		letter-spacing: 0 !important;
	}

	#lux-at-arrival .lux-at-arrival__moving-plane {
		top: 58%;
		right: 16%;
		width: 62px !important;
		height: 62px;
	}

	#lux-at-arrival .lux-at-arrival__moving-plane .elementor-widget-container {
		width: 62px !important;
		height: 62px;
	}

	#lux-at-arrival .lux-at-arrival__moving-plane .elementor-icon {
		width: 40px;
		height: 40px;
		font-size: 29px !important;
	}

	#lux-at-arrival .lux-at-arrival__moving-plane .elementor-icon svg {
		width: 29px !important;
		height: 29px !important;
	}

	#lux-at-arrival .lux-at-arrival__content {
		width: 100% !important;
		max-width: 620px !important;
		margin: 72px auto 0 !important;
		padding-top: 0 !important;
	}

	#lux-at-arrival .lux-at-arrival__eyebrow .elementor-heading-title {
		font-size: 11px !important;
		letter-spacing: 0.20em !important;
	}

	#lux-at-arrival .lux-at-arrival__title {
		margin-top: 28px !important;
	}

	#lux-at-arrival .lux-at-arrival__title .elementor-heading-title,
	#lux-at-arrival #lux-at-arrival-title {
		font-size: clamp(46px, 12.7vw, 62px) !important;
		line-height: 1.01 !important;
		letter-spacing: -0.042em !important;
	}

	#lux-at-arrival .lux-at-arrival__steps {
		margin-top: 55px !important;
	}

	#lux-at-arrival .lux-at-arrival__steps::before {
		top: 52px;
		bottom: 52px;
		left: 27px;
	}

	#lux-at-arrival .lux-at-arrival__step {
		grid-template-columns: 56px minmax(0, 1fr) !important;
		column-gap: 18px !important;
	}

	#lux-at-arrival .lux-at-arrival__step:not(:last-child) {
		margin-bottom: 30px !important;
	}

	#lux-at-arrival .lux-at-arrival__step-number {
		width: 56px !important;
		height: 56px;
	}

	#lux-at-arrival .lux-at-arrival__step-number .elementor-heading-title {
		font-size: 14px !important;
	}

	#lux-at-arrival .lux-at-arrival__step-title .elementor-heading-title {
		font-size: clamp(20px, 5.7vw, 26px) !important;
		line-height: 1.25 !important;
	}

	#lux-at-arrival .lux-at-arrival__step-text {
		margin-top: 11px !important;
	}

	#lux-at-arrival .lux-at-arrival__step-text .elementor-widget-container,
	#lux-at-arrival .lux-at-arrival__step-text p {
		font-size: 15px !important;
		line-height: 1.56 !important;
	}
}


/*======================================================================
  NARROW MOBILE
======================================================================*/

@media (max-width: 380px) {
	#lux-at-arrival .lux-at-arrival__shell,
	#lux-at-arrival .lux-at-arrival__shell > .e-con-inner {
		padding-left: max(14px, env(safe-area-inset-left)) !important;
		padding-right: max(14px, env(safe-area-inset-right)) !important;
	}

	#lux-at-arrival .lux-at-arrival__preview {
		min-height: 580px;
		padding: 47px 19px !important;
	}

	#lux-at-arrival .lux-at-arrival__card {
		padding: 25px 18px !important;
	}

	#lux-at-arrival .lux-at-arrival__code .elementor-heading-title {
		font-size: clamp(35px, 11.7vw, 45px) !important;
	}

	#lux-at-arrival .lux-at-arrival__title .elementor-heading-title,
	#lux-at-arrival #lux-at-arrival-title {
		font-size: clamp(42px, 12.3vw, 50px) !important;
	}

	#lux-at-arrival .lux-at-arrival__step {
		grid-template-columns: 52px minmax(0, 1fr) !important;
		column-gap: 15px !important;
	}

	#lux-at-arrival .lux-at-arrival__step-number {
		width: 52px !important;
		height: 52px;
	}

	#lux-at-arrival .lux-at-arrival__steps::before {
		top: 49px;
		bottom: 49px;
		left: 25px;
	}
}


/*======================================================================
  PHONE LANDSCAPE
======================================================================*/

@media (max-width: 900px) and (orientation: landscape) and (max-height: 600px) {
	#lux-at-arrival .lux-at-arrival__shell,
	#lux-at-arrival .lux-at-arrival__shell > .e-con-inner {
		width: 100% !important;
		padding-left: max(24px, env(safe-area-inset-left)) !important;
		padding-right: max(24px, env(safe-area-inset-right)) !important;
	}

	#lux-at-arrival .lux-at-arrival__shell {
		padding-top: 70px !important;
		padding-bottom: 78px !important;
	}

	#lux-at-arrival .lux-at-arrival__preview {
		max-width: 760px !important;
		min-height: 610px;
		padding: 52px 42px !important;
	}

	#lux-at-arrival .lux-at-arrival__content {
		max-width: 760px !important;
		margin-top: 72px !important;
	}

	#lux-at-arrival .lux-at-arrival__title .elementor-heading-title,
	#lux-at-arrival #lux-at-arrival-title {
		font-size: clamp(48px, 7.5vw, 64px) !important;
	}
}


/*======================================================================
  SAFARI / IOS
======================================================================*/

@supports (-webkit-touch-callout: none) {
	#lux-at-arrival .lux-at-arrival__preview,
	#lux-at-arrival .lux-at-arrival__card,
	#lux-at-arrival .lux-at-arrival__moving-plane {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
		-webkit-backface-visibility: hidden;
		backface-visibility: hidden;
	}
}


/*======================================================================
  ONE-TIME SOFT REVEAL
======================================================================*/

#lux-at-arrival.lux-at-reveal-ready .lux-at-reveal-item {
	opacity: 0;
	transform: translate3d(0, 28px, 0);
	transition:
		opacity 1050ms cubic-bezier(0.22, 1, 0.36, 1),
		transform 1050ms cubic-bezier(0.22, 1, 0.36, 1);
	transition-delay: var(--lux-at-reveal-delay, 0ms);
	will-change: opacity, transform;
}

#lux-at-arrival.lux-at-reveal-ready .lux-at-reveal-item.is-revealed {
	opacity: 1;
	transform: translate3d(0, 0, 0);
}

@media (max-width: 767px) {
	#lux-at-arrival.lux-at-reveal-ready .lux-at-reveal-item {
		transform: translate3d(0, 20px, 0);
		transition-duration: 900ms;
	}

	#lux-at-arrival.lux-at-reveal-ready .lux-at-reveal-item.is-revealed {
		transform: translate3d(0, 0, 0);
	}
}


/*======================================================================
  REDUCED MOTION
======================================================================*/

@media (prefers-reduced-motion: reduce) {
	#lux-at-arrival *,
	#lux-at-arrival *::before,
	#lux-at-arrival *::after {
		scroll-behavior: auto !important;
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
	}

	#lux-at-arrival.lux-at-reveal-ready .lux-at-reveal-item,
	#lux-at-arrival.lux-at-reveal-ready .lux-at-reveal-item.is-revealed {
		opacity: 1 !important;
		transform: none !important;
		transition: none !important;
		will-change: auto !important;
	}
}
/*==============================================================
  SECTION 03 — HEADING SPACING REFINEMENT
==============================================================*/

/* Guaranteed space between eyebrow and main heading */
#lux-at-arrival
	.lux-at-arrival__eyebrow
	.elementor-widget-container {
	padding-bottom: 44px !important;
}

#lux-at-arrival .lux-at-arrival__title {
	margin-top: 0 !important;
}

/* Desktop: improve spacing between heading words */
@media (min-width: 1025px) {

	#lux-at-arrival
		.lux-at-arrival__title
		.elementor-heading-title,
	#lux-at-arrival
		#lux-at-arrival-title {
		letter-spacing: -0.025em !important;
		word-spacing: 0.10em !important;
	}
}

/* Tablet */
@media (min-width: 768px) and (max-width: 1024px) {

	#lux-at-arrival
		.lux-at-arrival__eyebrow
		.elementor-widget-container {
		padding-bottom: 38px !important;
	}
}

/* Mobile */
@media (max-width: 767px) {

	#lux-at-arrival
		.lux-at-arrival__eyebrow
		.elementor-widget-container {
		padding-bottom: 30px !important;
	}
}

/*======================================================================
  04 — AIRPORT COVERAGE — CONSOLIDATED FINAL
  Page: /airport-transfers/
  Scope: #lux-at-airports

  IMPORTANT:
  - This block replaces the complete previous Section 04 CSS.
  - Delete every older Section 04 patch before adding this file.
  - The visible round arrow is generated on each row itself.
    The Elementor icon widget is hidden to eliminate positioning conflicts.
======================================================================*/


/*======================================================================
  04.1 — FOUNDATION
======================================================================*/

#lux-at-airports,
#lux-at-airports *,
#lux-at-airports *::before,
#lux-at-airports *::after {
	box-sizing: border-box;
}

#lux-at-airports {
	--lux-airports-paper: #f8f5ef;
	--lux-airports-ink: #1d1918;
	--lux-airports-body: #7c7571;
	--lux-airports-rose: #b0445e;
	--lux-airports-brand: #713541;
	--lux-airports-card-a: #28171d;
	--lux-airports-card-b: #1d1317;
	--lux-airports-card-c: #130f11;
	--lux-airports-white: #ffffff;
	--lux-airports-line: rgba(29, 25, 24, 0.14);
	--lux-airports-shell: 1824px;

	position: relative !important;
	isolation: isolate;

	display: block !important;
	width: 100% !important;
	max-width: none !important;

	margin: 0 !important;
	padding: 0 !important;

	overflow: hidden;

	background: var(--lux-airports-paper) !important;
	color: var(--lux-airports-ink);

	-webkit-tap-highlight-color: transparent;
}

#lux-at-airports > .e-con-inner {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

#lux-at-airports :is(h1, h2, h3, h4, p) {
	margin: 0;
}


/*======================================================================
  04.2 — SHELL
======================================================================*/

#lux-at-airports .lux-at-airports__shell,
#lux-at-airports .lux-at-airports__shell > .e-con-inner {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	gap: 0 !important;

	width: min(calc(100% - 72px), var(--lux-airports-shell)) !important;
	max-width: var(--lux-airports-shell) !important;

	margin: 0 auto !important;
	padding: 0 !important;
}

#lux-at-airports .lux-at-airports__shell {
	padding-top: clamp(145px, 9vw, 185px) !important;
	padding-bottom: clamp(135px, 8vw, 170px) !important;
}


/*======================================================================
  04.3 — EDITORIAL HEADER
======================================================================*/

#lux-at-airports .lux-at-airports__header,
#lux-at-airports .lux-at-airports__header > .e-con-inner {
	display: grid !important;
	grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr) !important;
	column-gap: clamp(100px, 9vw, 185px) !important;
	row-gap: 0 !important;

	align-items: end !important;

	width: 100% !important;
	max-width: none !important;

	margin: 0 !important;
	padding: 0 !important;
}

#lux-at-airports .lux-at-airports__heading-group,
#lux-at-airports .lux-at-airports__heading-group > .e-con-inner {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	gap: 0 !important;

	width: 100% !important;
	max-width: 760px !important;

	margin: 0 !important;
	padding: 0 !important;
}

#lux-at-airports .lux-at-airports__eyebrow {
	width: auto !important;
	max-width: 100% !important;
	margin: 0 !important;
}

#lux-at-airports
	.lux-at-airports__eyebrow
	.elementor-widget-container {
	padding-bottom: 36px !important;
}

#lux-at-airports
	.lux-at-airports__eyebrow
	.elementor-heading-title {
	color: var(--lux-airports-rose) !important;
	-webkit-text-fill-color: var(--lux-airports-rose) !important;

	font-family: "Manrope", Arial, sans-serif !important;
	font-size: 13px !important;
	font-weight: 650 !important;
	line-height: 1.4 !important;
	letter-spacing: 0.235em !important;
	text-transform: uppercase;
}

#lux-at-airports .lux-at-airports__title {
	width: 100% !important;
	max-width: 760px !important;
	margin: 0 !important;
}

#lux-at-airports
	.lux-at-airports__title
	.elementor-widget-container {
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

#lux-at-airports
	.lux-at-airports__title
	.elementor-heading-title,
#lux-at-airports
	#lux-at-airports-title {
	display: block;

	width: 100% !important;
	max-width: 760px !important;

	margin: 0 !important;
	padding: 0 !important;

	color: var(--lux-airports-ink) !important;
	-webkit-text-fill-color: var(--lux-airports-ink) !important;

	font-family: "Cinzel", Georgia, "Times New Roman", serif !important;
	font-size: clamp(72px, 5.35vw, 103px) !important;
	font-weight: 400 !important;
	line-height: 0.96 !important;
	letter-spacing: -0.045em !important;
	word-spacing: 0.08em !important;
	text-transform: uppercase;

	text-wrap: balance;
}

#lux-at-airports .lux-at-airports__introduction {
	width: 100% !important;
	max-width: 840px !important;
	margin: 0 0 14px !important;
}

#lux-at-airports
	.lux-at-airports__introduction
	.elementor-widget-container,
#lux-at-airports
	.lux-at-airports__introduction
	p {
	color: var(--lux-airports-body) !important;
	-webkit-text-fill-color: var(--lux-airports-body) !important;

	font-family: "Manrope", Arial, sans-serif !important;
	font-size: clamp(20px, 1.4vw, 26px) !important;
	font-weight: 400 !important;
	line-height: 1.72 !important;
	letter-spacing: -0.024em !important;
}

#lux-at-airports
	.lux-at-airports__introduction
	p:last-child {
	margin-bottom: 0 !important;
}


/*======================================================================
  04.4 — AIRPORT GRID
======================================================================*/

#lux-at-airports .lux-at-airports__list,
#lux-at-airports .lux-at-airports__list > .e-con-inner {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: 1px !important;

	align-items: stretch !important;

	width: 100% !important;
	max-width: none !important;

	margin: 0 !important;
	padding: 0 !important;
}

#lux-at-airports .lux-at-airports__list {
	margin-top: clamp(92px, 6vw, 120px) !important;
	padding: 1px !important;

	background: rgba(29, 25, 24, 0.18);
}


/*======================================================================
  04.5 — AIRPORT ROWS
======================================================================*/

#lux-at-airports .lux-at-airports__row {
	position: relative !important;
	isolation: isolate;

	display: flex !important;
	flex-direction: row !important;
	align-items: center !important;
	justify-content: flex-start !important;
	gap: 0 !important;

	width: 100% !important;
	min-width: 0 !important;
	min-height: 178px;

	margin: 0 !important;
	padding: 38px 124px 38px 34px !important;

	overflow: hidden;

	border: 0 !important;
	border-radius: 0 !important;

	background:
		radial-gradient(
			circle at 88% 12%,
			rgba(161, 67, 90, 0.16),
			transparent 37%
		),
		linear-gradient(
			135deg,
			var(--lux-airports-card-a) 0%,
			var(--lux-airports-card-b) 48%,
			var(--lux-airports-card-c) 100%
		) !important;

	color: var(--lux-airports-white);
	cursor: pointer;

	transition:
		background-color 320ms ease,
		box-shadow 320ms ease !important;
}

#lux-at-airports .lux-at-airports__row::before {
	content: "";

	position: absolute;
	inset: 0;
	z-index: -1;

	background:
		linear-gradient(
			112deg,
			transparent 0%,
			rgba(255, 255, 255, 0.018) 42%,
			rgba(225, 197, 130, 0.055) 100%
		);

	opacity: 0;
	transition: opacity 320ms ease;
}

/*
 * The visible circle and arrow are created directly on the row.
 * This avoids every Elementor widget-positioning conflict.
 */
#lux-at-airports .lux-at-airports__row::after {
	content: "↗";

	position: absolute !important;
	top: 50% !important;
	right: 34px !important;
	z-index: 3;

	display: grid !important;
	place-items: center !important;

	width: 58px !important;
	height: 58px !important;

	margin: 0 !important;
	padding: 0 0 2px 1px !important;

	border: 1px solid rgba(255, 255, 255, 0.92);
	border-radius: 50%;

	background: #ffffff;
	color: var(--lux-airports-brand);

	font-family: Arial, Helvetica, sans-serif;
	font-size: 22px;
	font-weight: 600;
	line-height: 1;
	text-align: center;

	transform: translateY(-50%);
	transform-origin: center;

	box-shadow:
		0 12px 30px rgba(0, 0, 0, 0.18),
		inset 0 1px 0 rgba(255, 255, 255, 0.95);

	transition:
		background-color 280ms ease,
		border-color 280ms ease,
		color 280ms ease,
		transform 280ms cubic-bezier(0.22, 1, 0.36, 1),
		box-shadow 280ms ease;

	pointer-events: none;
}

/* Hide Elementor's original icon widget completely. */
#lux-at-airports .lux-at-airports__arrow {
	display: none !important;
	visibility: hidden !important;
	width: 0 !important;
	height: 0 !important;
	min-width: 0 !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
	pointer-events: none !important;
}


/*======================================================================
  04.6 — ROW CONTENT
======================================================================*/

#lux-at-airports .lux-at-airports__row-content,
#lux-at-airports .lux-at-airports__row-content > .e-con-inner {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	gap: 0 !important;

	width: 100% !important;
	min-width: 0 !important;
	max-width: none !important;

	margin: 0 !important;
	padding: 0 !important;
}

#lux-at-airports .lux-at-airports__name {
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
}

#lux-at-airports
	.lux-at-airports__name
	.elementor-heading-title {
	max-width: 100% !important;

	color: #ffffff !important;
	-webkit-text-fill-color: #ffffff !important;

	font-family: "Cinzel", Georgia, "Times New Roman", serif !important;
	font-size: clamp(24px, 1.65vw, 31px) !important;
	font-weight: 400 !important;
	line-height: 1.2 !important;
	letter-spacing: -0.022em !important;
	text-transform: uppercase;

	white-space: normal !important;
	word-break: normal !important;
	overflow-wrap: normal !important;

	text-shadow: 0 2px 12px rgba(0, 0, 0, 0.18);
}

#lux-at-airports .lux-at-airports__region {
	width: 100% !important;
	max-width: 100% !important;
	margin: 17px 0 0 !important;
}

#lux-at-airports
	.lux-at-airports__region
	.elementor-heading-title {
	color: rgba(255, 255, 255, 0.67) !important;
	-webkit-text-fill-color: rgba(255, 255, 255, 0.67) !important;

	font-family: "Manrope", Arial, sans-serif !important;
	font-size: 12px !important;
	font-weight: 500 !important;
	line-height: 1.4 !important;
	letter-spacing: 0.14em !important;
	text-transform: uppercase;
}


/*======================================================================
  04.7 — INTERACTION STATES
======================================================================*/

@media (hover: hover) and (pointer: fine) {

	#lux-at-airports .lux-at-airports__row:hover {
		box-shadow: 0 18px 44px rgba(27, 17, 22, 0.16);
	}

	#lux-at-airports .lux-at-airports__row:hover::before {
		opacity: 1;
	}

	#lux-at-airports .lux-at-airports__row:hover::after {
		border-color: #000000;
		background: #000000;
		color: #ffffff;

		transform: translateY(-50%) scale(1.05);

		box-shadow: 0 15px 36px rgba(0, 0, 0, 0.27);
	}
}

#lux-at-airports .lux-at-airports__row:focus {
	outline: none;
}

#lux-at-airports .lux-at-airports__row:focus-visible {
	outline: 2px solid var(--lux-airports-brand);
	outline-offset: 5px;
	z-index: 2;
}

#lux-at-airports .lux-at-airports__row:focus-visible::after,
#lux-at-airports .lux-at-airports__row:active::after {
	border-color: #000000;
	background: #000000;
	color: #ffffff;

	transform: translateY(-50%) scale(0.96);
}


/*======================================================================
  04.8 — STANDARD DESKTOP / LARGE LAPTOP
======================================================================*/

@media (min-width: 1201px) and (max-width: 1536px) {

	#lux-at-airports .lux-at-airports__shell,
	#lux-at-airports .lux-at-airports__shell > .e-con-inner {
		width: min(calc(100% - 64px), 1460px) !important;
	}

	#lux-at-airports .lux-at-airports__shell {
		padding-top: 130px !important;
		padding-bottom: 140px !important;
	}

	#lux-at-airports .lux-at-airports__header,
	#lux-at-airports .lux-at-airports__header > .e-con-inner {
		column-gap: clamp(75px, 7vw, 120px) !important;
	}

	#lux-at-airports
		.lux-at-airports__title
		.elementor-heading-title,
	#lux-at-airports
		#lux-at-airports-title {
		font-size: clamp(67px, 5.35vw, 83px) !important;
	}

	#lux-at-airports .lux-at-airports__list {
		margin-top: 88px !important;
	}

	#lux-at-airports .lux-at-airports__row {
		min-height: 164px;
		padding: 32px 112px 32px 29px !important;
	}

	#lux-at-airports .lux-at-airports__row::after {
		right: 29px !important;
		width: 54px !important;
		height: 54px !important;
		font-size: 21px;
	}

	#lux-at-airports
		.lux-at-airports__name
		.elementor-heading-title {
		font-size: clamp(22px, 1.75vw, 27px) !important;
	}
}


/*======================================================================
  04.9 — SMALL LAPTOP / TABLET LANDSCAPE
======================================================================*/

@media (min-width: 1025px) and (max-width: 1200px) {

	#lux-at-airports .lux-at-airports__shell,
	#lux-at-airports .lux-at-airports__shell > .e-con-inner {
		width: calc(100% - 56px) !important;
	}

	#lux-at-airports .lux-at-airports__shell {
		padding-top: 116px !important;
		padding-bottom: 125px !important;
	}

	#lux-at-airports .lux-at-airports__header,
	#lux-at-airports .lux-at-airports__header > .e-con-inner {
		grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr) !important;
		column-gap: 62px !important;
	}

	#lux-at-airports
		.lux-at-airports__title
		.elementor-heading-title,
	#lux-at-airports
		#lux-at-airports-title {
		font-size: clamp(57px, 5.8vw, 70px) !important;
	}

	#lux-at-airports
		.lux-at-airports__introduction
		.elementor-widget-container,
	#lux-at-airports
		.lux-at-airports__introduction
		p {
		font-size: 19px !important;
	}

	#lux-at-airports .lux-at-airports__list {
		margin-top: 78px !important;
	}

	#lux-at-airports .lux-at-airports__row {
		min-height: 154px;
		padding: 29px 96px 29px 24px !important;
	}

	#lux-at-airports .lux-at-airports__row::after {
		right: 24px !important;
		width: 50px !important;
		height: 50px !important;
		font-size: 19px;
	}

	#lux-at-airports
		.lux-at-airports__name
		.elementor-heading-title {
		font-size: 21px !important;
	}
}


/*======================================================================
  04.10 — IPAD / TABLET
======================================================================*/

@media (min-width: 768px) and (max-width: 1024px) {

	#lux-at-airports .lux-at-airports__shell,
	#lux-at-airports .lux-at-airports__shell > .e-con-inner {
		width: calc(100% - 48px) !important;
		max-width: 900px !important;
	}

	#lux-at-airports .lux-at-airports__shell {
		padding-top: 104px !important;
		padding-bottom: 112px !important;
	}

	#lux-at-airports .lux-at-airports__header,
	#lux-at-airports .lux-at-airports__header > .e-con-inner {
		display: flex !important;
		flex-direction: column !important;
		align-items: flex-start !important;
		gap: 0 !important;
	}

	#lux-at-airports
		.lux-at-airports__eyebrow
		.elementor-widget-container {
		padding-bottom: 31px !important;
	}

	#lux-at-airports
		.lux-at-airports__title
		.elementor-heading-title,
	#lux-at-airports
		#lux-at-airports-title {
		font-size: clamp(61px, 8.3vw, 78px) !important;
	}

	#lux-at-airports .lux-at-airports__introduction {
		max-width: 720px !important;
		margin: 54px 0 0 !important;
	}

	#lux-at-airports
		.lux-at-airports__introduction
		.elementor-widget-container,
	#lux-at-airports
		.lux-at-airports__introduction
		p {
		font-size: clamp(19px, 2.45vw, 22px) !important;
	}

	#lux-at-airports .lux-at-airports__list,
	#lux-at-airports .lux-at-airports__list > .e-con-inner {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	#lux-at-airports .lux-at-airports__list {
		margin-top: 76px !important;
	}

	#lux-at-airports .lux-at-airports__row {
		min-height: 164px;
		padding: 31px 104px 31px 28px !important;
	}

	#lux-at-airports .lux-at-airports__row::after {
		right: 27px !important;
		width: 52px !important;
		height: 52px !important;
		font-size: 20px;
	}

	#lux-at-airports
		.lux-at-airports__name
		.elementor-heading-title {
		font-size: clamp(23px, 3vw, 28px) !important;
	}
}


/*======================================================================
  04.11 — IPHONE / ANDROID MOBILE
======================================================================*/

@media (max-width: 767px) {

	#lux-at-airports .lux-at-airports__shell,
	#lux-at-airports .lux-at-airports__shell > .e-con-inner {
		width: 100% !important;
		max-width: none !important;

		margin: 0 !important;

		padding-left: max(16px, env(safe-area-inset-left)) !important;
		padding-right: max(16px, env(safe-area-inset-right)) !important;
	}

	#lux-at-airports .lux-at-airports__shell {
		padding-top: 76px !important;
		padding-bottom: 86px !important;
	}

	#lux-at-airports .lux-at-airports__header,
	#lux-at-airports .lux-at-airports__header > .e-con-inner {
		display: flex !important;
		flex-direction: column !important;
		align-items: flex-start !important;
		gap: 0 !important;
	}

	#lux-at-airports
		.lux-at-airports__eyebrow
		.elementor-widget-container {
		padding-bottom: 26px !important;
	}

	#lux-at-airports
		.lux-at-airports__eyebrow
		.elementor-heading-title {
		font-size: 11px !important;
		line-height: 1.45 !important;
		letter-spacing: 0.20em !important;
	}

	#lux-at-airports
		.lux-at-airports__title
		.elementor-heading-title,
	#lux-at-airports
		#lux-at-airports-title {
		font-size: clamp(45px, 12.4vw, 61px) !important;
		line-height: 1.01 !important;
		letter-spacing: -0.038em !important;
		word-spacing: 0.06em !important;
	}

	#lux-at-airports .lux-at-airports__introduction {
		width: 100% !important;
		max-width: 620px !important;
		margin: 38px 0 0 !important;
	}

	#lux-at-airports
		.lux-at-airports__introduction
		.elementor-widget-container,
	#lux-at-airports
		.lux-at-airports__introduction
		p {
		font-size: clamp(16px, 4.4vw, 19px) !important;
		line-height: 1.64 !important;
	}

	#lux-at-airports .lux-at-airports__list,
	#lux-at-airports .lux-at-airports__list > .e-con-inner {
		grid-template-columns: minmax(0, 1fr) !important;
	}

	#lux-at-airports .lux-at-airports__list {
		margin-top: 58px !important;
	}

	#lux-at-airports .lux-at-airports__row {
		min-height: 150px;
		padding: 28px 94px 28px 24px !important;
	}

	#lux-at-airports .lux-at-airports__row::after {
		right: 22px !important;
		width: 52px !important;
		height: 52px !important;
		font-size: 20px;
	}

	#lux-at-airports
		.lux-at-airports__name
		.elementor-heading-title {
		font-size: clamp(23px, 6.5vw, 28px) !important;
		line-height: 1.22 !important;
	}

	#lux-at-airports .lux-at-airports__region {
		margin-top: 13px !important;
	}

	#lux-at-airports
		.lux-at-airports__region
		.elementor-heading-title {
		font-size: 10.5px !important;
		line-height: 1.42 !important;
		letter-spacing: 0.11em !important;
	}
}


/*======================================================================
  04.12 — SMALL IPHONE / NARROW MOBILE
======================================================================*/

@media (max-width: 380px) {

	#lux-at-airports .lux-at-airports__shell,
	#lux-at-airports .lux-at-airports__shell > .e-con-inner {
		padding-left: max(14px, env(safe-area-inset-left)) !important;
		padding-right: max(14px, env(safe-area-inset-right)) !important;
	}

	#lux-at-airports
		.lux-at-airports__title
		.elementor-heading-title,
	#lux-at-airports
		#lux-at-airports-title {
		font-size: clamp(41px, 12vw, 49px) !important;
	}

	#lux-at-airports .lux-at-airports__row {
		min-height: 142px;
		padding: 25px 82px 25px 20px !important;
	}

	#lux-at-airports .lux-at-airports__row::after {
		right: 18px !important;
		width: 48px !important;
		height: 48px !important;
		font-size: 18px;
	}

	#lux-at-airports
		.lux-at-airports__name
		.elementor-heading-title {
		font-size: 22px !important;
	}
}


/*======================================================================
  04.13 — PHONE LANDSCAPE
======================================================================*/

@media
	(max-width: 900px)
	and (orientation: landscape)
	and (max-height: 600px) {

	#lux-at-airports .lux-at-airports__shell,
	#lux-at-airports .lux-at-airports__shell > .e-con-inner {
		width: 100% !important;

		padding-left: max(24px, env(safe-area-inset-left)) !important;
		padding-right: max(24px, env(safe-area-inset-right)) !important;
	}

	#lux-at-airports .lux-at-airports__shell {
		padding-top: 70px !important;
		padding-bottom: 78px !important;
	}

	#lux-at-airports
		.lux-at-airports__title
		.elementor-heading-title,
	#lux-at-airports
		#lux-at-airports-title {
		font-size: clamp(48px, 7.5vw, 64px) !important;
	}

	#lux-at-airports .lux-at-airports__list,
	#lux-at-airports .lux-at-airports__list > .e-con-inner {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}


/*======================================================================
  04.14 — SAFARI / IOS STABILITY
======================================================================*/

@supports (-webkit-touch-callout: none) {

	#lux-at-airports .lux-at-airports__row,
	#lux-at-airports .lux-at-airports__row::after {
		-webkit-backface-visibility: hidden;
		backface-visibility: hidden;
	}
}


/*======================================================================
  04.15 — ONE-TIME SOFT REVEAL
  Triggered by /luxeline-pages/js/airport-transfers.js
======================================================================*/

#lux-at-airports.lux-at-reveal-ready .lux-at-reveal-item {
	opacity: 0;
	transform: translate3d(0, 28px, 0);

	transition:
		opacity 1050ms cubic-bezier(0.22, 1, 0.36, 1),
		transform 1050ms cubic-bezier(0.22, 1, 0.36, 1);

	transition-delay: var(--lux-at-reveal-delay, 0ms);
	will-change: opacity, transform;
}

#lux-at-airports.lux-at-reveal-ready
	.lux-at-reveal-item.is-revealed {
	opacity: 1;
	transform: translate3d(0, 0, 0);
}

@media (max-width: 767px) {

	#lux-at-airports.lux-at-reveal-ready .lux-at-reveal-item {
		transform: translate3d(0, 20px, 0);
		transition-duration: 900ms;
	}

	#lux-at-airports.lux-at-reveal-ready
		.lux-at-reveal-item.is-revealed {
		transform: translate3d(0, 0, 0);
	}
}


/*======================================================================
  04.16 — REDUCED MOTION
======================================================================*/

@media (prefers-reduced-motion: reduce) {

	#lux-at-airports *,
	#lux-at-airports *::before,
	#lux-at-airports *::after {
		scroll-behavior: auto !important;
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
	}

	#lux-at-airports.lux-at-reveal-ready .lux-at-reveal-item,
	#lux-at-airports.lux-at-reveal-ready
		.lux-at-reveal-item.is-revealed {
		opacity: 1 !important;
		transform: none !important;
		transition: none !important;
		will-change: auto !important;
	}

	#lux-at-airports .lux-at-airports__row::after {
		transform: translateY(-50%) !important;
	}
}
/*======================================================================
  05 — THE LUXELINE AIRPORT STANDARD
  Page: /airport-transfers/
  Scope: #lux-at-standards
  Responsive: desktop, laptop, iPad, iPhone, Android and Safari
======================================================================*/


/*======================================================================
  05.1 — SECTION FOUNDATION
======================================================================*/

#lux-at-standards,
#lux-at-standards *,
#lux-at-standards *::before,
#lux-at-standards *::after {
	box-sizing: border-box;
}

#lux-at-standards {
	--lux-standard-black: #090809;
	--lux-standard-panel: #21161b;
	--lux-standard-panel-deep: #120e10;
	--lux-standard-white: #ffffff;
	--lux-standard-muted: rgba(255, 255, 255, 0.60);
	--lux-standard-gold: #e1c582;
	--lux-standard-line: rgba(255, 255, 255, 0.14);
	--lux-standard-border: rgba(255, 255, 255, 0.17);
	--lux-standard-shell: 1824px;

	position: relative !important;
	isolation: isolate;

	display: block !important;

	width: 100% !important;
	max-width: none !important;

	margin: 0 !important;
	padding: 0 !important;

	overflow: hidden;

	background: var(--lux-standard-black) !important;
	color: var(--lux-standard-white);

	-webkit-tap-highlight-color: transparent;
}

#lux-at-standards > .e-con-inner {
	width: 100% !important;
	max-width: none !important;

	margin: 0 !important;
	padding: 0 !important;
}

#lux-at-standards :is(h1, h2, h3, h4, p) {
	margin: 0;
}


/*======================================================================
  05.2 — MAIN SHELL
======================================================================*/

#lux-at-standards .lux-at-standards-shell,
#lux-at-standards .lux-at-standards-shell > .e-con-inner {
	display: grid !important;
	grid-template-columns: minmax(0, 1.08fr) minmax(0, 0.92fr) !important;
	column-gap: clamp(82px, 6.2vw, 122px) !important;
	row-gap: 0 !important;

	align-items: stretch !important;

	width: min(calc(100% - 72px), var(--lux-standard-shell)) !important;
	max-width: var(--lux-standard-shell) !important;

	margin: 0 auto !important;
	padding: 0 !important;
}

#lux-at-standards .lux-at-standards-shell {
	padding-top: clamp(135px, 8vw, 170px) !important;
	padding-bottom: clamp(135px, 8vw, 170px) !important;
}


/*======================================================================
  05.3 — QUOTE PANEL
======================================================================*/

#lux-at-standards .lux-at-quote-panel,
#lux-at-standards .lux-at-quote-panel > .e-con-inner {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	justify-content: space-between !important;
	gap: 56px !important;

	width: 100% !important;
	max-width: none !important;
	min-height: 682px;

	margin: 0 !important;
}

#lux-at-standards .lux-at-quote-panel {
	position: relative;
	isolation: isolate;

	padding:
		clamp(78px, 5.2vw, 102px)
		clamp(72px, 5.2vw, 104px)
		clamp(70px, 4.7vw, 92px) !important;

	overflow: hidden;

	border: 1px solid var(--lux-standard-border);
	border-radius: 42px;

	background:
		radial-gradient(
			circle at 22% 16%,
			rgba(161, 67, 90, 0.14),
			transparent 38%
		),
		linear-gradient(
			145deg,
			var(--lux-standard-panel) 0%,
			#1a1216 46%,
			var(--lux-standard-panel-deep) 100%
		) !important;

	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.025),
		0 30px 72px rgba(0, 0, 0, 0.19);
}

#lux-at-standards .lux-at-quote-panel::before {
	content: "";

	position: absolute;
	inset: 0;
	z-index: -1;

	background:
		linear-gradient(
			120deg,
			rgba(255, 255, 255, 0.018),
			transparent 48%,
			rgba(225, 197, 130, 0.026)
		);

	pointer-events: none;
}


/* Main quotation */

#lux-at-standards .lux-at-standard-quote {
	width: 100% !important;
	max-width: 780px !important;

	margin: 0 !important;
}

#lux-at-standards
	.lux-at-standard-quote
	.elementor-widget-container {
	width: 100% !important;

	margin: 0 !important;
	padding: 0 !important;
}

#lux-at-standards
	.lux-at-standard-quote
	.elementor-heading-title,
#lux-at-standards
	#lux-at-standards-title {
	display: block;

	width: 100% !important;
	max-width: 780px !important;

	margin: 0 !important;
	padding: 0 !important;

	color: #ffffff !important;
	-webkit-text-fill-color: #ffffff !important;

	font-family: "Cinzel", Georgia, "Times New Roman", serif !important;
	font-size: clamp(54px, 3.55vw, 68px) !important;
	font-weight: 400 !important;
	line-height: 1.31 !important;
	letter-spacing: -0.033em !important;
	word-spacing: 0.09em !important;
	text-transform: uppercase;

	text-wrap: pretty;

	text-shadow:
		0 3px 18px rgba(0, 0, 0, 0.28),
		0 0 24px rgba(0, 0, 0, 0.08);
}


/* Quote label */

#lux-at-standards .lux-at-standard-quote-label {
	width: auto !important;
	max-width: 100% !important;

	margin: 0 !important;
}

#lux-at-standards
	.lux-at-standard-quote-label
	.elementor-heading-title {
	color: var(--lux-standard-gold) !important;
	-webkit-text-fill-color: var(--lux-standard-gold) !important;

	font-family: "Manrope", Arial, sans-serif !important;
	font-size: 13px !important;
	font-weight: 650 !important;
	line-height: 1.4 !important;
	letter-spacing: 0.205em !important;
	text-transform: uppercase;
}


/*======================================================================
  05.4 — DETAIL STACK
======================================================================*/

#lux-at-standards .lux-at-detail-stack,
#lux-at-standards .lux-at-detail-stack > .e-con-inner {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	justify-content: stretch !important;
	gap: 0 !important;

	width: 100% !important;
	max-width: none !important;
	min-height: 100%;

	margin: 0 !important;
	padding: 0 !important;
}


/* Individual detail row */

#lux-at-standards .lux-at-standard-detail {
	display: grid !important;
	grid-template-columns: 48px minmax(0, 1fr) !important;
	column-gap: 31px !important;

	align-items: start !important;

	width: 100% !important;
	max-width: none !important;
	min-height: 170px;

	margin: 0 !important;
	padding: 39px 0 40px !important;

	border-bottom: 1px solid var(--lux-standard-line);
}

#lux-at-standards .lux-at-standard-detail:first-child {
	padding-top: 0 !important;
}

#lux-at-standards .lux-at-standard-detail:last-child {
	padding-bottom: 0 !important;
}

#lux-at-standards .lux-at-standard-detail > .e-con-inner {
	display: contents !important;
}


/* Detail number */

#lux-at-standards .lux-at-standard-number {
	width: 48px !important;
	max-width: 48px !important;

	margin: 0 !important;
	padding: 2px 0 0 !important;
}

#lux-at-standards
	.lux-at-standard-number
	.elementor-heading-title {
	color: var(--lux-standard-gold) !important;
	-webkit-text-fill-color: var(--lux-standard-gold) !important;

	font-family: "Cinzel", Georgia, "Times New Roman", serif !important;
	font-size: 17px !important;
	font-weight: 500 !important;
	line-height: 1.2 !important;
	letter-spacing: 0 !important;
}


/* Detail content */

#lux-at-standards .lux-at-standard-content,
#lux-at-standards .lux-at-standard-content > .e-con-inner {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	gap: 0 !important;

	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;

	margin: 0 !important;
	padding: 0 !important;
}


/* Detail heading */

#lux-at-standards .lux-at-standard-heading {
	width: 100% !important;
	max-width: 100% !important;

	margin: 0 !important;
}

#lux-at-standards
	.lux-at-standard-heading
	.elementor-heading-title {
	color: #ffffff !important;
	-webkit-text-fill-color: #ffffff !important;

	font-family: "Cinzel", Georgia, "Times New Roman", serif !important;
	font-size: clamp(23px, 1.5vw, 29px) !important;
	font-weight: 400 !important;
	line-height: 1.22 !important;
	letter-spacing: -0.025em !important;
	text-transform: uppercase;
}


/* Detail description */

#lux-at-standards .lux-at-standard-description {
	width: 100% !important;
	max-width: 760px !important;

	margin: 19px 0 0 !important;
}

#lux-at-standards
	.lux-at-standard-description
	.elementor-widget-container,
#lux-at-standards
	.lux-at-standard-description
	p {
	color: var(--lux-standard-muted) !important;
	-webkit-text-fill-color: var(--lux-standard-muted) !important;

	font-family: "Manrope", Arial, sans-serif !important;
	font-size: clamp(16px, 1.04vw, 19px) !important;
	font-weight: 400 !important;
	line-height: 1.66 !important;
	letter-spacing: -0.018em !important;
}

#lux-at-standards
	.lux-at-standard-description
	p:last-child {
	margin-bottom: 0 !important;
}


/*======================================================================
  05.5 — LARGE LAPTOP / STANDARD DESKTOP
======================================================================*/

@media (min-width: 1201px) and (max-width: 1536px) {

	#lux-at-standards .lux-at-standards-shell,
	#lux-at-standards .lux-at-standards-shell > .e-con-inner {
		width: min(calc(100% - 64px), 1460px) !important;
		column-gap: clamp(68px, 5.6vw, 92px) !important;
	}

	#lux-at-standards .lux-at-standards-shell {
		padding-top: 125px !important;
		padding-bottom: 132px !important;
	}

	#lux-at-standards .lux-at-quote-panel {
		min-height: 620px;

		padding: 72px 65px 68px !important;

		border-radius: 35px;
	}

	#lux-at-standards
		.lux-at-standard-quote
		.elementor-heading-title,
	#lux-at-standards
		#lux-at-standards-title {
		font-size: clamp(47px, 3.7vw, 57px) !important;
	}

	#lux-at-standards .lux-at-standard-detail {
		min-height: 153px;

		grid-template-columns: 43px minmax(0, 1fr) !important;
		column-gap: 25px !important;

		padding: 32px 0 33px !important;
	}
}


/*======================================================================
  05.6 — SMALL LAPTOP / TABLET LANDSCAPE
======================================================================*/

@media (min-width: 1025px) and (max-width: 1200px) {

	#lux-at-standards .lux-at-standards-shell,
	#lux-at-standards .lux-at-standards-shell > .e-con-inner {
		width: calc(100% - 56px) !important;
		grid-template-columns: minmax(0, 1.02fr) minmax(0, 0.98fr) !important;
		column-gap: 54px !important;
	}

	#lux-at-standards .lux-at-standards-shell {
		padding-top: 112px !important;
		padding-bottom: 120px !important;
	}

	#lux-at-standards .lux-at-quote-panel {
		min-height: 570px;

		padding: 62px 50px 58px !important;

		border-radius: 31px;
	}

	#lux-at-standards
		.lux-at-standard-quote
		.elementor-heading-title,
	#lux-at-standards
		#lux-at-standards-title {
		font-size: clamp(40px, 3.85vw, 48px) !important;
	}

	#lux-at-standards .lux-at-standard-detail {
		min-height: 142px;

		grid-template-columns: 39px minmax(0, 1fr) !important;
		column-gap: 22px !important;

		padding: 28px 0 29px !important;
	}

	#lux-at-standards
		.lux-at-standard-heading
		.elementor-heading-title {
		font-size: 21px !important;
	}

	#lux-at-standards
		.lux-at-standard-description
		.elementor-widget-container,
	#lux-at-standards
		.lux-at-standard-description
		p {
		font-size: 15px !important;
	}
}


/*======================================================================
  05.7 — IPAD / TABLET
======================================================================*/

@media (min-width: 768px) and (max-width: 1024px) {

	#lux-at-standards .lux-at-standards-shell,
	#lux-at-standards .lux-at-standards-shell > .e-con-inner {
		display: flex !important;
		flex-direction: column !important;
		gap: 0 !important;

		width: calc(100% - 48px) !important;
		max-width: 900px !important;
	}

	#lux-at-standards .lux-at-standards-shell {
		padding-top: 104px !important;
		padding-bottom: 112px !important;
	}

	#lux-at-standards .lux-at-quote-panel {
		width: 100% !important;
		max-width: 820px !important;
		min-height: 570px;

		margin: 0 auto !important;
		padding: 68px 62px 62px !important;

		border-radius: 34px;
	}

	#lux-at-standards
		.lux-at-standard-quote
		.elementor-heading-title,
	#lux-at-standards
		#lux-at-standards-title {
		font-size: clamp(52px, 7.2vw, 67px) !important;
	}

	#lux-at-standards .lux-at-detail-stack {
		width: 100% !important;
		max-width: 820px !important;

		margin: 78px auto 0 !important;
	}

	#lux-at-standards .lux-at-standard-detail {
		min-height: 0;

		grid-template-columns: 48px minmax(0, 1fr) !important;
		column-gap: 29px !important;

		padding: 37px 0 38px !important;
	}

	#lux-at-standards .lux-at-standard-detail:first-child {
		padding-top: 0 !important;
	}

	#lux-at-standards
		.lux-at-standard-heading
		.elementor-heading-title {
		font-size: clamp(24px, 3vw, 29px) !important;
	}

	#lux-at-standards
		.lux-at-standard-description
		.elementor-widget-container,
	#lux-at-standards
		.lux-at-standard-description
		p {
		font-size: 17px !important;
	}
}


/*======================================================================
  05.8 — IPHONE / ANDROID MOBILE
======================================================================*/

@media (max-width: 767px) {

	#lux-at-standards .lux-at-standards-shell,
	#lux-at-standards .lux-at-standards-shell > .e-con-inner {
		display: flex !important;
		flex-direction: column !important;
		gap: 0 !important;

		width: 100% !important;
		max-width: none !important;

		margin: 0 !important;

		padding-left: max(16px, env(safe-area-inset-left)) !important;
		padding-right: max(16px, env(safe-area-inset-right)) !important;
	}

	#lux-at-standards .lux-at-standards-shell {
		padding-top: 76px !important;
		padding-bottom: 86px !important;
	}

	#lux-at-standards .lux-at-quote-panel {
		width: 100% !important;
		max-width: 620px !important;
		min-height: 0;

		margin: 0 auto !important;
		padding: 46px 27px 38px !important;

		gap: 42px !important;

		border-radius: 25px;
	}

	#lux-at-standards
		.lux-at-standard-quote
		.elementor-heading-title,
	#lux-at-standards
		#lux-at-standards-title {
		font-size: clamp(39px, 10.4vw, 54px) !important;
		line-height: 1.18 !important;
		letter-spacing: -0.027em !important;
		word-spacing: 0.06em !important;
	}

	#lux-at-standards
		.lux-at-standard-quote-label
		.elementor-heading-title {
		font-size: 10.5px !important;
		line-height: 1.45 !important;
		letter-spacing: 0.16em !important;
	}

	#lux-at-standards .lux-at-detail-stack {
		width: 100% !important;
		max-width: 620px !important;

		margin: 62px auto 0 !important;
	}

	#lux-at-standards .lux-at-standard-detail {
		min-height: 0;

		grid-template-columns: 38px minmax(0, 1fr) !important;
		column-gap: 18px !important;

		padding: 29px 0 30px !important;
	}

	#lux-at-standards .lux-at-standard-detail:first-child {
		padding-top: 0 !important;
	}

	#lux-at-standards .lux-at-standard-number {
		width: 38px !important;
		max-width: 38px !important;

		padding-top: 1px !important;
	}

	#lux-at-standards
		.lux-at-standard-number
		.elementor-heading-title {
		font-size: 14px !important;
	}

	#lux-at-standards
		.lux-at-standard-heading
		.elementor-heading-title {
		font-size: clamp(21px, 6vw, 27px) !important;
		line-height: 1.24 !important;
	}

	#lux-at-standards .lux-at-standard-description {
		margin-top: 13px !important;
	}

	#lux-at-standards
		.lux-at-standard-description
		.elementor-widget-container,
	#lux-at-standards
		.lux-at-standard-description
		p {
		font-size: 15.5px !important;
		line-height: 1.61 !important;
	}
}


/*======================================================================
  05.9 — SMALL IPHONE / NARROW MOBILE
======================================================================*/

@media (max-width: 380px) {

	#lux-at-standards .lux-at-standards-shell,
	#lux-at-standards .lux-at-standards-shell > .e-con-inner {
		padding-left: max(14px, env(safe-area-inset-left)) !important;
		padding-right: max(14px, env(safe-area-inset-right)) !important;
	}

	#lux-at-standards .lux-at-quote-panel {
		padding: 41px 22px 34px !important;
	}

	#lux-at-standards
		.lux-at-standard-quote
		.elementor-heading-title,
	#lux-at-standards
		#lux-at-standards-title {
		font-size: clamp(36px, 10vw, 44px) !important;
	}

	#lux-at-standards .lux-at-standard-detail {
		grid-template-columns: 34px minmax(0, 1fr) !important;
		column-gap: 15px !important;
	}

	#lux-at-standards .lux-at-standard-number {
		width: 34px !important;
		max-width: 34px !important;
	}
}


/*======================================================================
  05.10 — PHONE LANDSCAPE
======================================================================*/

@media
	(max-width: 900px)
	and (orientation: landscape)
	and (max-height: 600px) {

	#lux-at-standards .lux-at-standards-shell,
	#lux-at-standards .lux-at-standards-shell > .e-con-inner {
		width: 100% !important;

		padding-left: max(24px, env(safe-area-inset-left)) !important;
		padding-right: max(24px, env(safe-area-inset-right)) !important;
	}

	#lux-at-standards .lux-at-standards-shell {
		padding-top: 70px !important;
		padding-bottom: 78px !important;
	}

	#lux-at-standards .lux-at-quote-panel {
		max-width: 760px !important;

		padding: 52px 43px 44px !important;
	}

	#lux-at-standards
		.lux-at-standard-quote
		.elementor-heading-title,
	#lux-at-standards
		#lux-at-standards-title {
		font-size: clamp(42px, 6.5vw, 56px) !important;
	}

	#lux-at-standards .lux-at-detail-stack {
		max-width: 760px !important;
		margin-top: 66px !important;
	}
}


/*======================================================================
  05.11 — SAFARI / IOS STABILITY
======================================================================*/

@supports (-webkit-touch-callout: none) {

	#lux-at-standards .lux-at-quote-panel {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);

		-webkit-backface-visibility: hidden;
		backface-visibility: hidden;
	}
}


/*======================================================================
  05.12 — SECTION 05 SOFT ONE-TIME REVEAL
  Triggered by /luxeline-pages/js/airport-transfers.js
======================================================================*/

#lux-at-standards.lux-at-reveal-ready .lux-at-reveal-item {
	opacity: 0;
	transform: translate3d(0, 28px, 0);

	transition:
		opacity 1050ms cubic-bezier(0.22, 1, 0.36, 1),
		transform 1050ms cubic-bezier(0.22, 1, 0.36, 1);

	transition-delay: var(--lux-at-reveal-delay, 0ms);

	will-change: opacity, transform;
}

#lux-at-standards.lux-at-reveal-ready
	.lux-at-reveal-item.is-revealed {
	opacity: 1;
	transform: translate3d(0, 0, 0);
}

@media (max-width: 767px) {

	#lux-at-standards.lux-at-reveal-ready .lux-at-reveal-item {
		transform: translate3d(0, 20px, 0);

		transition-duration: 900ms;
	}

	#lux-at-standards.lux-at-reveal-ready
		.lux-at-reveal-item.is-revealed {
		transform: translate3d(0, 0, 0);
	}
}


/*======================================================================
  05.13 — REDUCED MOTION
======================================================================*/

@media (prefers-reduced-motion: reduce) {

	#lux-at-standards *,
	#lux-at-standards *::before,
	#lux-at-standards *::after {
		scroll-behavior: auto !important;
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
	}

	#lux-at-standards.lux-at-reveal-ready .lux-at-reveal-item,
	#lux-at-standards.lux-at-reveal-ready
		.lux-at-reveal-item.is-revealed {
		opacity: 1 !important;
		transform: none !important;
		transition: none !important;
		will-change: auto !important;
	}
}
/*======================================================================
  06 — AIRPORT TRANSFER QUESTIONS
  Royal Addons Advanced Accordion
  Scope: #lux-at-faq

  IMPORTANT
  - Royal Addons keeps full control of display, height and slide animation.
  - This file changes only layout, colours, typography, spacing and states.
======================================================================*/


/*======================================================================
  06.1 — SECTION FOUNDATION
======================================================================*/

#lux-at-faq,
#lux-at-faq *,
#lux-at-faq *::before,
#lux-at-faq *::after {
	box-sizing: border-box;
}

#lux-at-faq {
	--lux-faq-paper: #f8f5ef;
	--lux-faq-ink: #1d1918;
	--lux-faq-body: #7c7571;
	--lux-faq-rose: #b0445e;
	--lux-faq-line: rgba(29, 25, 24, 0.16);
	--lux-faq-shell: 1824px;

	position: relative !important;
	isolation: isolate;

	display: block !important;

	width: 100% !important;
	max-width: none !important;

	margin: 0 !important;
	padding: 0 !important;

	overflow: hidden;

	background: var(--lux-faq-paper) !important;
	color: var(--lux-faq-ink);

	-webkit-tap-highlight-color: transparent;
}

#lux-at-faq > .e-con-inner {
	width: 100% !important;
	max-width: none !important;

	margin: 0 !important;
	padding: 0 !important;
}

#lux-at-faq :is(h1, h2, h3, h4, p) {
	margin: 0;
}


/*======================================================================
  06.2 — MAIN TWO-COLUMN SHELL
======================================================================*/

#lux-at-faq .lux-at-faq__shell,
#lux-at-faq .lux-at-faq__shell > .e-con-inner {
	display: grid !important;
	grid-template-columns: minmax(360px, 0.72fr) minmax(0, 1.28fr) !important;
	column-gap: clamp(100px, 8vw, 165px) !important;
	row-gap: 0 !important;

	align-items: start !important;

	width: min(calc(100% - 72px), var(--lux-faq-shell)) !important;
	max-width: var(--lux-faq-shell) !important;

	margin: 0 auto !important;
	padding: 0 !important;
}

#lux-at-faq .lux-at-faq__shell {
	padding-top: clamp(145px, 9vw, 185px) !important;
	padding-bottom: clamp(145px, 9vw, 185px) !important;
}


/*======================================================================
  06.3 — LEFT INTRODUCTION
======================================================================*/

#lux-at-faq .lux-at-faq__introduction,
#lux-at-faq .lux-at-faq__introduction > .e-con-inner {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	gap: 0 !important;

	width: 100% !important;
	max-width: 620px !important;

	margin: 0 !important;
	padding: 0 !important;
}


/* Eyebrow */

#lux-at-faq .lux-at-faq__eyebrow {
	width: auto !important;
	max-width: 100% !important;

	margin: 0 !important;
}

#lux-at-faq
	.lux-at-faq__eyebrow
	.elementor-widget-container {
	padding-bottom: 36px !important;
}

#lux-at-faq
	.lux-at-faq__eyebrow
	.elementor-heading-title {
	color: var(--lux-faq-rose) !important;
	-webkit-text-fill-color: var(--lux-faq-rose) !important;

	font-family: "Manrope", Arial, sans-serif !important;
	font-size: 13px !important;
	font-weight: 650 !important;
	line-height: 1.4 !important;
	letter-spacing: 0.235em !important;
	text-transform: uppercase;
}


/* Main heading */

#lux-at-faq .lux-at-faq__title {
	width: 100% !important;
	max-width: 560px !important;

	margin: 0 !important;
}

#lux-at-faq
	.lux-at-faq__title
	.elementor-widget-container {
	width: 100% !important;

	margin: 0 !important;
	padding: 0 !important;
}

#lux-at-faq
	.lux-at-faq__title
	.elementor-heading-title,
#lux-at-faq
	#lux-at-faq-title {
	display: block;

	width: 100% !important;
	max-width: 560px !important;

	margin: 0 !important;
	padding: 0 !important;

	color: var(--lux-faq-ink) !important;
	-webkit-text-fill-color: var(--lux-faq-ink) !important;

	font-family: "Cinzel", Georgia, "Times New Roman", serif !important;
	font-size: clamp(76px, 5.2vw, 100px) !important;
	font-weight: 400 !important;
	line-height: 0.98 !important;
	letter-spacing: -0.048em !important;
	word-spacing: 0.08em !important;
	text-transform: uppercase;

	text-wrap: balance;
}


/* Description */

#lux-at-faq .lux-at-faq__description {
	width: 100% !important;
	max-width: 590px !important;

	margin: clamp(37px, 2.7vw, 50px) 0 0 !important;
}

#lux-at-faq
	.lux-at-faq__description
	.elementor-widget-container,
#lux-at-faq
	.lux-at-faq__description
	p {
	color: var(--lux-faq-body) !important;
	-webkit-text-fill-color: var(--lux-faq-body) !important;

	font-family: "Manrope", Arial, sans-serif !important;
	font-size: clamp(20px, 1.42vw, 26px) !important;
	font-weight: 400 !important;
	line-height: 1.65 !important;
	letter-spacing: -0.026em !important;
}

#lux-at-faq
	.lux-at-faq__description
	p:last-child {
	margin-bottom: 0 !important;
}


/*======================================================================
  06.4 — ROYAL ADDONS ACCORDION FOUNDATION
======================================================================*/

#lux-at-faq .lux-at-faq__accordion {
	width: 100% !important;
	max-width: none !important;

	margin: 0 !important;
	padding: 0 !important;
}

#lux-at-faq
	.lux-at-faq__accordion
	.elementor-widget-container,
#lux-at-faq
	.lux-at-faq__accordion
	.wpr-advanced-accordion {
	width: 100% !important;
	max-width: none !important;

	margin: 0 !important;
	padding: 0 !important;

	border: 0 !important;
	border-radius: 0 !important;

	background: transparent !important;
	box-shadow: none !important;
}


/*======================================================================
  06.5 — ACCORDION ITEMS
======================================================================*/

#lux-at-faq
	.lux-at-faq__accordion
	.wpr-accordion-item-wrap {
	position: relative;

	width: 100% !important;

	margin: 0 !important;
	padding: 0 !important;

	border: 0 !important;
	border-top: 1px solid var(--lux-faq-line) !important;
	border-radius: 0 !important;

	background: transparent !important;
	box-shadow: none !important;
}

#lux-at-faq
	.lux-at-faq__accordion
	.wpr-accordion-item-wrap:last-child {
	border-bottom: 1px solid var(--lux-faq-line) !important;
}


/*======================================================================
  06.6 — QUESTION BUTTON
======================================================================*/

#lux-at-faq
	.lux-at-faq__accordion
	.wpr-acc-button {
	position: relative;

	display: flex !important;
	flex-direction: row !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 28px !important;

	width: 100% !important;
	min-height: 0 !important;

	margin: 0 !important;
	padding: clamp(30px, 2.25vw, 42px) 0 !important;

	border: 0 !important;
	border-radius: 0 !important;

	background: transparent !important;
	box-shadow: none !important;

	color: var(--lux-faq-ink) !important;

	font: inherit !important;
	text-align: left !important;

	cursor: pointer;

	-webkit-appearance: none;
	appearance: none;
}


/* Hide Royal Addons' unused leading icon slot. */

#lux-at-faq
	.lux-at-faq__accordion
	.wpr-acc-title-icon {
	display: none !important;
}


/* Question title wrapper */

#lux-at-faq
	.lux-at-faq__accordion
	.wpr-acc-item-title {
	display: flex !important;
	align-items: center !important;

	flex: 1 1 auto;

	width: auto !important;
	min-width: 0 !important;
	max-width: none !important;

	margin: 0 !important;
	padding: 0 !important;

	color: inherit !important;
}


/* Question text */

#lux-at-faq
	.lux-at-faq__accordion
	.wpr-acc-title-text {
	display: block !important;

	width: 100% !important;
	min-width: 0 !important;

	margin: 0 !important;
	padding: 0 !important;

	color: var(--lux-faq-ink) !important;
	-webkit-text-fill-color: var(--lux-faq-ink) !important;

	font-family: "Cinzel", Georgia, "Times New Roman", serif !important;
	font-size: clamp(22px, 1.55vw, 29px) !important;
	font-weight: 400 !important;
	line-height: 1.32 !important;
	letter-spacing: -0.025em !important;
	text-transform: uppercase;

	text-decoration: none !important;
}


/*======================================================================
  06.7 — PLUS / MINUS ICONS
======================================================================*/

#lux-at-faq
	.lux-at-faq__accordion
	.wpr-toggle-icon {
	order: 2;

	flex: 0 0 34px;

	align-items: center !important;
	justify-content: center !important;

	width: 34px !important;
	height: 34px !important;

	margin: 0 0 0 auto !important;
	padding: 0 !important;

	border: 0 !important;
	border-radius: 0 !important;

	background: transparent !important;
	box-shadow: none !important;

	color: var(--lux-faq-rose) !important;

	font-size: 20px !important;
	line-height: 1 !important;
	text-align: center !important;
}


/*
 * Royal Addons decides whether the open or closed icon is visible.
 * These rules change appearance only.
 */

#lux-at-faq
	.lux-at-faq__accordion
	.wpr-toggle-icon
	:is(i, svg, span) {
	position: static !important;

	display: block !important;

	margin: 0 !important;
	padding: 0 !important;

	color: inherit !important;
	fill: currentColor !important;
	stroke: currentColor !important;

	line-height: 1 !important;
}


/*======================================================================
  06.8 — ANSWER PANEL
  Royal Addons retains complete control of:
  display, height, max-height, overflow and transition.
======================================================================*/

#lux-at-faq
	.lux-at-faq__accordion
	.wpr-acc-panel {
	width: 100% !important;

	margin: 0 !important;
	padding: 0 !important;

	border: 0 !important;
	border-radius: 0 !important;

	background: transparent !important;
	box-shadow: none !important;

	color: var(--lux-faq-body) !important;
	-webkit-text-fill-color: var(--lux-faq-body) !important;

	font-family: "Manrope", Arial, sans-serif !important;
	font-size: clamp(17px, 1.16vw, 21px) !important;
	font-weight: 400 !important;
	line-height: 1.74 !important;
	letter-spacing: -0.021em !important;
}


/*
 * Visual spacing lives on the answer content, never on the animated panel.
 * This releases Royal Addons' slide-height calculation completely.
 */

#lux-at-faq
	.lux-at-faq__accordion
	.wpr-acc-panel
	> * {
	padding-right: clamp(62px, 5vw, 92px) !important;

	color: inherit !important;
	-webkit-text-fill-color: inherit !important;

	font-family: inherit !important;
	font-size: inherit !important;
	font-weight: inherit !important;
	line-height: inherit !important;
	letter-spacing: inherit !important;
}

#lux-at-faq
	.lux-at-faq__accordion
	.wpr-acc-panel
	> :last-child {
	padding-bottom: clamp(32px, 2.5vw, 46px) !important;
}

#lux-at-faq
	.lux-at-faq__accordion
	.wpr-acc-panel
	p {
	margin: 0 0 1em !important;

	color: inherit !important;
	-webkit-text-fill-color: inherit !important;

	font-family: inherit !important;
	font-size: inherit !important;
	font-weight: inherit !important;
	line-height: inherit !important;
	letter-spacing: inherit !important;
}

#lux-at-faq
	.lux-at-faq__accordion
	.wpr-acc-panel
	p:last-child {
	margin-bottom: 0 !important;
}


/*======================================================================
  06.9 — HOVER, ACTIVE AND KEYBOARD STATES
  No custom movement or transition is placed on the accordion button.
======================================================================*/

#lux-at-faq
	.lux-at-faq__accordion
	.wpr-acc-button:focus {
	outline: none !important;
}

#lux-at-faq
	.lux-at-faq__accordion
	.wpr-acc-button:focus-visible {
	outline: 2px solid var(--lux-faq-rose) !important;
	outline-offset: 5px;
	z-index: 2;
}

@media (hover: hover) and (pointer: fine) {

	#lux-at-faq
		.lux-at-faq__accordion
		.wpr-acc-button:hover
		.wpr-toggle-icon {
		color: var(--lux-faq-ink) !important;
	}
}


/*======================================================================
  06.10 — LARGE LAPTOP / STANDARD DESKTOP
======================================================================*/

@media (min-width: 1201px) and (max-width: 1536px) {

	#lux-at-faq .lux-at-faq__shell,
	#lux-at-faq .lux-at-faq__shell > .e-con-inner {
		width: min(calc(100% - 64px), 1460px) !important;
		column-gap: clamp(76px, 6.5vw, 110px) !important;
	}

	#lux-at-faq .lux-at-faq__shell {
		padding-top: 128px !important;
		padding-bottom: 136px !important;
	}

	#lux-at-faq
		.lux-at-faq__title
		.elementor-heading-title,
	#lux-at-faq
		#lux-at-faq-title {
		font-size: clamp(67px, 5.35vw, 82px) !important;
	}

	#lux-at-faq
		.lux-at-faq__accordion
		.wpr-acc-button {
		padding-top: 32px !important;
		padding-bottom: 32px !important;
	}

	#lux-at-faq
		.lux-at-faq__accordion
		.wpr-acc-title-text {
		font-size: clamp(21px, 1.6vw, 25px) !important;
	}
}


/*======================================================================
  06.11 — SMALL LAPTOP / TABLET LANDSCAPE
======================================================================*/

@media (min-width: 1025px) and (max-width: 1200px) {

	#lux-at-faq .lux-at-faq__shell,
	#lux-at-faq .lux-at-faq__shell > .e-con-inner {
		width: calc(100% - 56px) !important;
		grid-template-columns: minmax(300px, 0.72fr) minmax(0, 1.28fr) !important;
		column-gap: 58px !important;
	}

	#lux-at-faq .lux-at-faq__shell {
		padding-top: 113px !important;
		padding-bottom: 121px !important;
	}

	#lux-at-faq
		.lux-at-faq__title
		.elementor-heading-title,
	#lux-at-faq
		#lux-at-faq-title {
		font-size: clamp(57px, 5.75vw, 69px) !important;
	}

	#lux-at-faq
		.lux-at-faq__description
		.elementor-widget-container,
	#lux-at-faq
		.lux-at-faq__description
		p {
		font-size: 19px !important;
	}

	#lux-at-faq
		.lux-at-faq__accordion
		.wpr-acc-title-text {
		font-size: 20px !important;
	}

	#lux-at-faq
		.lux-at-faq__accordion
		.wpr-acc-panel {
		font-size: 16.5px !important;
	}
}


/*======================================================================
  06.12 — IPAD / TABLET
======================================================================*/

@media (min-width: 768px) and (max-width: 1024px) {

	#lux-at-faq .lux-at-faq__shell,
	#lux-at-faq .lux-at-faq__shell > .e-con-inner {
		display: flex !important;
		flex-direction: column !important;
		gap: 0 !important;

		width: calc(100% - 48px) !important;
		max-width: 900px !important;
	}

	#lux-at-faq .lux-at-faq__shell {
		padding-top: 104px !important;
		padding-bottom: 112px !important;
	}

	#lux-at-faq .lux-at-faq__introduction {
		width: 100% !important;
		max-width: 760px !important;
	}

	#lux-at-faq
		.lux-at-faq__eyebrow
		.elementor-widget-container {
		padding-bottom: 32px !important;
	}

	#lux-at-faq
		.lux-at-faq__title
		.elementor-heading-title,
	#lux-at-faq
		#lux-at-faq-title {
		max-width: 700px !important;

		font-size: clamp(61px, 8.3vw, 78px) !important;
	}

	#lux-at-faq .lux-at-faq__description {
		max-width: 700px !important;
	}

	#lux-at-faq .lux-at-faq__accordion {
		width: 100% !important;
		max-width: 820px !important;

		margin: 75px 0 0 !important;
	}

	#lux-at-faq
		.lux-at-faq__accordion
		.wpr-acc-title-text {
		font-size: clamp(22px, 2.8vw, 27px) !important;
	}
}


/*======================================================================
  06.13 — IPHONE / ANDROID MOBILE
======================================================================*/

@media (max-width: 767px) {

	#lux-at-faq .lux-at-faq__shell,
	#lux-at-faq .lux-at-faq__shell > .e-con-inner {
		display: flex !important;
		flex-direction: column !important;
		gap: 0 !important;

		width: 100% !important;
		max-width: none !important;

		margin: 0 !important;

		padding-left: max(16px, env(safe-area-inset-left)) !important;
		padding-right: max(16px, env(safe-area-inset-right)) !important;
	}

	#lux-at-faq .lux-at-faq__shell {
		padding-top: 76px !important;
		padding-bottom: 86px !important;
	}

	#lux-at-faq .lux-at-faq__introduction,
	#lux-at-faq .lux-at-faq__accordion {
		width: 100% !important;
		max-width: 620px !important;

		margin-left: auto !important;
		margin-right: auto !important;
	}

	#lux-at-faq
		.lux-at-faq__eyebrow
		.elementor-widget-container {
		padding-bottom: 27px !important;
	}

	#lux-at-faq
		.lux-at-faq__eyebrow
		.elementor-heading-title {
		font-size: 11px !important;
		line-height: 1.45 !important;
		letter-spacing: 0.20em !important;
	}

	#lux-at-faq
		.lux-at-faq__title
		.elementor-heading-title,
	#lux-at-faq
		#lux-at-faq-title {
		font-size: clamp(47px, 12.8vw, 63px) !important;
		line-height: 1.01 !important;
		letter-spacing: -0.04em !important;
		word-spacing: 0.06em !important;
	}

	#lux-at-faq .lux-at-faq__description {
		margin-top: 29px !important;
	}

	#lux-at-faq
		.lux-at-faq__description
		.elementor-widget-container,
	#lux-at-faq
		.lux-at-faq__description
		p {
		font-size: clamp(16px, 4.4vw, 19px) !important;
		line-height: 1.63 !important;
	}

	#lux-at-faq .lux-at-faq__accordion {
		margin-top: 58px !important;
	}

	#lux-at-faq
		.lux-at-faq__accordion
		.wpr-acc-button {
		gap: 18px !important;

		padding-top: 26px !important;
		padding-bottom: 26px !important;
	}

	#lux-at-faq
		.lux-at-faq__accordion
		.wpr-acc-title-text {
		font-size: clamp(19px, 5.35vw, 24px) !important;
		line-height: 1.35 !important;
	}

	#lux-at-faq
		.lux-at-faq__accordion
		.wpr-toggle-icon {
		flex-basis: 28px;

		width: 28px !important;
		height: 28px !important;

		font-size: 18px !important;
	}

	#lux-at-faq
		.lux-at-faq__accordion
		.wpr-acc-panel {
		font-size: 16px !important;
		line-height: 1.66 !important;
	}

	#lux-at-faq
		.lux-at-faq__accordion
		.wpr-acc-panel
		> * {
		padding-right: 34px !important;
	}

	#lux-at-faq
		.lux-at-faq__accordion
		.wpr-acc-panel
		> :last-child {
		padding-bottom: 29px !important;
	}
}


/*======================================================================
  06.14 — SMALL IPHONE / NARROW MOBILE
======================================================================*/

@media (max-width: 380px) {

	#lux-at-faq .lux-at-faq__shell,
	#lux-at-faq .lux-at-faq__shell > .e-con-inner {
		padding-left: max(14px, env(safe-area-inset-left)) !important;
		padding-right: max(14px, env(safe-area-inset-right)) !important;
	}

	#lux-at-faq
		.lux-at-faq__title
		.elementor-heading-title,
	#lux-at-faq
		#lux-at-faq-title {
		font-size: clamp(42px, 12.2vw, 50px) !important;
	}

	#lux-at-faq
		.lux-at-faq__accordion
		.wpr-acc-title-text {
		font-size: 19px !important;
	}

	#lux-at-faq
		.lux-at-faq__accordion
		.wpr-acc-panel {
		font-size: 15.5px !important;
	}

	#lux-at-faq
		.lux-at-faq__accordion
		.wpr-acc-panel
		> * {
		padding-right: 25px !important;
	}
}


/*======================================================================
  06.15 — PHONE LANDSCAPE
======================================================================*/

@media
	(max-width: 900px)
	and (orientation: landscape)
	and (max-height: 600px) {

	#lux-at-faq .lux-at-faq__shell,
	#lux-at-faq .lux-at-faq__shell > .e-con-inner {
		width: 100% !important;

		padding-left: max(24px, env(safe-area-inset-left)) !important;
		padding-right: max(24px, env(safe-area-inset-right)) !important;
	}

	#lux-at-faq .lux-at-faq__shell {
		padding-top: 70px !important;
		padding-bottom: 78px !important;
	}

	#lux-at-faq .lux-at-faq__introduction,
	#lux-at-faq .lux-at-faq__accordion {
		max-width: 760px !important;
	}

	#lux-at-faq .lux-at-faq__accordion {
		margin-top: 65px !important;
	}
}


/*======================================================================
  06.16 — SAFARI / IOS STABILITY
======================================================================*/

@supports (-webkit-touch-callout: none) {

	#lux-at-faq
		.lux-at-faq__accordion
		.wpr-acc-button {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);

		-webkit-backface-visibility: hidden;
		backface-visibility: hidden;
	}
}


/*======================================================================
  06.17 — SECTION REVEAL
  This animates the complete accordion widget only once on page entry.
  It does not animate individual Royal Addons panels.
======================================================================*/

#lux-at-faq.lux-at-reveal-ready .lux-at-reveal-item {
	opacity: 0;
	transform: translate3d(0, 28px, 0);

	transition:
		opacity 1050ms cubic-bezier(0.22, 1, 0.36, 1),
		transform 1050ms cubic-bezier(0.22, 1, 0.36, 1);

	transition-delay: var(--lux-at-reveal-delay, 0ms);

	will-change: opacity, transform;
}

#lux-at-faq.lux-at-reveal-ready
	.lux-at-reveal-item.is-revealed {
	opacity: 1;
	transform: translate3d(0, 0, 0);
}

@media (max-width: 767px) {

	#lux-at-faq.lux-at-reveal-ready .lux-at-reveal-item {
		transform: translate3d(0, 20px, 0);
		transition-duration: 900ms;
	}
}


/*======================================================================
  06.18 — REDUCED MOTION
  Only the page-entry reveal is disabled.
  Royal Addons is not modified here.
======================================================================*/

@media (prefers-reduced-motion: reduce) {

	#lux-at-faq.lux-at-reveal-ready .lux-at-reveal-item,
	#lux-at-faq.lux-at-reveal-ready
		.lux-at-reveal-item.is-revealed {
		opacity: 1 !important;
		transform: none !important;
		transition: none !important;
		will-change: auto !important;
	}
}
/*======================================================================
  07 — FINAL AIRPORT TRANSFER CTA
  Page: /airport-transfers/
  Scope: #lux-at-cta
  Responsive: desktop, laptop, iPad, iPhone, Android and Safari
======================================================================*/


/*======================================================================
  07.1 — SECTION FOUNDATION
======================================================================*/

#lux-at-cta,
#lux-at-cta *,
#lux-at-cta *::before,
#lux-at-cta *::after {
	box-sizing: border-box;
}

#lux-at-cta {
	--lux-cta-white: #ffffff;
	--lux-cta-gold: #e1c582;
	--lux-cta-dark: #5b3540;
	--lux-cta-mid: #743847;
	--lux-cta-bright: #a74461;
	--lux-cta-shell: 1824px;

	position: relative !important;
	isolation: isolate;

	display: block !important;

	width: 100% !important;
	max-width: none !important;
	min-height: 720px;

	margin: 0 !important;
	padding: 0 !important;

	overflow: hidden;

	background:
		radial-gradient(
			circle at 92% 13%,
			transparent 0 27.8%,
			rgba(255, 255, 255, 0.10) 28% 28.15%,
			transparent 28.35% 38%,
			rgba(255, 255, 255, 0.075) 38.2% 38.35%,
			transparent 38.55% 48%,
			rgba(255, 255, 255, 0.055) 48.2% 48.35%,
			transparent 48.55%
		),
		radial-gradient(
			circle at 84% 57%,
			rgba(255, 255, 255, 0.055),
			transparent 34%
		),
		linear-gradient(
			105deg,
			var(--lux-cta-dark) 0%,
			var(--lux-cta-mid) 48%,
			var(--lux-cta-bright) 100%
		) !important;

	color: var(--lux-cta-white);

	-webkit-tap-highlight-color: transparent;
}

#lux-at-cta::before {
	content: "";

	position: absolute;
	inset: 0;
	z-index: -1;

	background:
		linear-gradient(
			90deg,
			rgba(14, 8, 11, 0.08),
			transparent 42%,
			rgba(255, 255, 255, 0.025)
		);

	pointer-events: none;
}

#lux-at-cta > .e-con-inner {
	width: 100% !important;
	max-width: none !important;

	margin: 0 !important;
	padding: 0 !important;
}

#lux-at-cta :is(h1, h2, h3, h4, p) {
	margin: 0;
}


/*======================================================================
  07.2 — MAIN SHELL
======================================================================*/

#lux-at-cta .lux-at-cta__shell,
#lux-at-cta .lux-at-cta__shell > .e-con-inner {
	display: grid !important;
	grid-template-columns: minmax(0, 1.25fr) minmax(360px, 0.75fr) !important;
	column-gap: clamp(90px, 7vw, 150px) !important;
	row-gap: 0 !important;

	align-items: end !important;

	width: min(calc(100% - 72px), var(--lux-cta-shell)) !important;
	max-width: var(--lux-cta-shell) !important;
	min-height: 720px;

	margin: 0 auto !important;
	padding: 0 !important;
}

#lux-at-cta .lux-at-cta__shell {
	padding-top: clamp(145px, 8.7vw, 180px) !important;
	padding-bottom: clamp(145px, 8.7vw, 180px) !important;
}


/*======================================================================
  07.3 — CONTENT
======================================================================*/

#lux-at-cta .lux-at-cta__content,
#lux-at-cta .lux-at-cta__content > .e-con-inner {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	gap: 0 !important;

	width: 100% !important;
	max-width: 1030px !important;

	margin: 0 !important;
	padding: 0 !important;
}


/* Eyebrow */

#lux-at-cta .lux-at-cta__eyebrow {
	width: auto !important;
	max-width: 100% !important;

	margin: 0 !important;
}

#lux-at-cta
	.lux-at-cta__eyebrow
	.elementor-widget-container {
	padding-bottom: 38px !important;
}

#lux-at-cta
	.lux-at-cta__eyebrow
	.elementor-heading-title {
	color: var(--lux-cta-gold) !important;
	-webkit-text-fill-color: var(--lux-cta-gold) !important;

	font-family: "Manrope", Arial, sans-serif !important;
	font-size: 13px !important;
	font-weight: 650 !important;
	line-height: 1.4 !important;
	letter-spacing: 0.235em !important;
	text-transform: uppercase;

	text-shadow: 0 2px 12px rgba(0, 0, 0, 0.16);
}


/* Main heading */

#lux-at-cta .lux-at-cta__title {
	width: 100% !important;
	max-width: 1030px !important;

	margin: 0 !important;
}

#lux-at-cta
	.lux-at-cta__title
	.elementor-widget-container {
	width: 100% !important;

	margin: 0 !important;
	padding: 0 !important;
}

#lux-at-cta
	.lux-at-cta__title
	.elementor-heading-title,
#lux-at-cta
	#lux-at-cta-title {
	display: block;

	width: 100% !important;
	max-width: 1030px !important;

	margin: 0 !important;
	padding: 0 !important;

	color: var(--lux-cta-white) !important;
	-webkit-text-fill-color: var(--lux-cta-white) !important;

	font-family: "Cinzel", Georgia, "Times New Roman", serif !important;
	font-size: clamp(70px, 5vw, 96px) !important;
	font-weight: 400 !important;
	line-height: 1.04 !important;
	letter-spacing: -0.045em !important;
	word-spacing: 0.08em !important;
	text-transform: uppercase;

	text-wrap: balance;

	text-shadow:
		0 4px 22px rgba(0, 0, 0, 0.22),
		0 1px 8px rgba(0, 0, 0, 0.14);
}


/*======================================================================
  07.4 — ACTION AREA
======================================================================*/

#lux-at-cta .lux-at-cta__action,
#lux-at-cta .lux-at-cta__action > .e-con-inner {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-end !important;
	justify-content: flex-end !important;

	width: 100% !important;
	max-width: 455px !important;

	margin: 0 0 2px auto !important;
	padding: 0 !important;
}


/*======================================================================
  07.5 — CTA BUTTON
======================================================================*/

#lux-at-cta .lux-at-cta__button {
	width: 100% !important;
	max-width: 455px !important;

	margin: 0 !important;
}

#lux-at-cta
	.lux-at-cta__button
	.elementor-widget-container {
	width: 100% !important;

	margin: 0 !important;
	padding: 0 !important;
}

#lux-at-cta
	.lux-at-cta__button
	.elementor-button-wrapper {
	width: 100% !important;
}

#lux-at-cta
	.lux-at-cta__button
	.elementor-button {
	position: relative;
	isolation: isolate;

	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 26px !important;

	width: 100% !important;
	min-height: 82px;

	margin: 0 !important;
	padding: 24px 34px !important;

	overflow: hidden;

	border: 1px solid rgba(255, 255, 255, 0.94) !important;
	border-radius: 10px !important;

	background:
		linear-gradient(
			120deg,
			rgba(255, 255, 255, 0.055),
			rgba(255, 255, 255, 0.018)
		) !important;

	color: var(--lux-cta-white) !important;

	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.12),
		0 16px 38px rgba(39, 13, 23, 0.10);

	-webkit-backdrop-filter: blur(8px);
	backdrop-filter: blur(8px);

	text-decoration: none !important;

	transition:
		border-color 320ms ease,
		box-shadow 320ms ease,
		transform 320ms cubic-bezier(0.22, 1, 0.36, 1) !important;
}

#lux-at-cta
	.lux-at-cta__button
	.elementor-button::before {
	content: "";

	position: absolute;
	inset: 0;
	z-index: -1;

	background: var(--lux-cta-white);

	transform: scaleX(0);
	transform-origin: left center;

	transition:
		transform 430ms cubic-bezier(0.22, 1, 0.36, 1);
}

#lux-at-cta
	.lux-at-cta__button
	.elementor-button-content-wrapper {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 26px !important;

	width: 100% !important;
}

#lux-at-cta
	.lux-at-cta__button
	.elementor-button-text {
	color: inherit !important;
	-webkit-text-fill-color: currentColor !important;

	font-family: "Manrope", Arial, sans-serif !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	line-height: 1.35 !important;
	letter-spacing: 0.14em !important;
	text-transform: uppercase;

	text-align: left;
}

#lux-at-cta
	.lux-at-cta__button
	.elementor-button-icon {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;

	flex: 0 0 24px;

	width: 24px !important;
	height: 24px;

	margin: 0 !important;

	color: inherit !important;

	transition:
		transform 320ms cubic-bezier(0.22, 1, 0.36, 1);
}

#lux-at-cta
	.lux-at-cta__button
	.elementor-button-icon
	:is(i, svg) {
	display: block !important;

	width: 17px !important;
	height: 17px !important;

	margin: 0 !important;

	color: inherit !important;
	fill: currentColor !important;
	stroke: currentColor !important;
}


/*======================================================================
  07.6 — HOVER, TAP AND KEYBOARD STATES
======================================================================*/

@media (hover: hover) and (pointer: fine) {

	#lux-at-cta
		.lux-at-cta__button
		.elementor-button:hover {
		border-color: var(--lux-cta-white) !important;
		color: #111111 !important;

		transform: translateY(-2px);

		box-shadow:
			0 20px 44px rgba(35, 12, 20, 0.18);
	}

	#lux-at-cta
		.lux-at-cta__button
		.elementor-button:hover::before {
		transform: scaleX(1);
	}

	#lux-at-cta
		.lux-at-cta__button
		.elementor-button:hover
		.elementor-button-icon {
		transform: translate(3px, -3px);
	}
}

#lux-at-cta
	.lux-at-cta__button
	.elementor-button:focus {
	outline: none !important;
}

#lux-at-cta
	.lux-at-cta__button
	.elementor-button:focus-visible {
	outline: 2px solid var(--lux-cta-white) !important;
	outline-offset: 5px;
}

#lux-at-cta
	.lux-at-cta__button
	.elementor-button:active {
	color: #111111 !important;
	transform: scale(0.985);
}

#lux-at-cta
	.lux-at-cta__button
	.elementor-button:active::before {
	transform: scaleX(1);
}


/*======================================================================
  07.7 — LARGE LAPTOP / STANDARD DESKTOP
======================================================================*/

@media (min-width: 1201px) and (max-width: 1536px) {

	#lux-at-cta,
	#lux-at-cta .lux-at-cta__shell,
	#lux-at-cta .lux-at-cta__shell > .e-con-inner {
		min-height: 650px;
	}

	#lux-at-cta .lux-at-cta__shell,
	#lux-at-cta .lux-at-cta__shell > .e-con-inner {
		width: min(calc(100% - 64px), 1460px) !important;
		grid-template-columns: minmax(0, 1.22fr) minmax(330px, 0.78fr) !important;
		column-gap: clamp(70px, 5.8vw, 100px) !important;
	}

	#lux-at-cta .lux-at-cta__shell {
		padding-top: 120px !important;
		padding-bottom: 122px !important;
	}

	#lux-at-cta
		.lux-at-cta__title
		.elementor-heading-title,
	#lux-at-cta
		#lux-at-cta-title {
		font-size: clamp(60px, 5vw, 77px) !important;
	}

	#lux-at-cta .lux-at-cta__action,
	#lux-at-cta .lux-at-cta__button {
		max-width: 420px !important;
	}
}


/*======================================================================
  07.8 — SMALL LAPTOP / TABLET LANDSCAPE
======================================================================*/

@media (min-width: 1025px) and (max-width: 1200px) {

	#lux-at-cta,
	#lux-at-cta .lux-at-cta__shell,
	#lux-at-cta .lux-at-cta__shell > .e-con-inner {
		min-height: 580px;
	}

	#lux-at-cta .lux-at-cta__shell,
	#lux-at-cta .lux-at-cta__shell > .e-con-inner {
		width: calc(100% - 56px) !important;
		grid-template-columns: minmax(0, 1.15fr) minmax(310px, 0.85fr) !important;
		column-gap: 58px !important;
	}

	#lux-at-cta .lux-at-cta__shell {
		padding-top: 104px !important;
		padding-bottom: 108px !important;
	}

	#lux-at-cta
		.lux-at-cta__title
		.elementor-heading-title,
	#lux-at-cta
		#lux-at-cta-title {
		font-size: clamp(51px, 5.1vw, 62px) !important;
	}

	#lux-at-cta .lux-at-cta__action,
	#lux-at-cta .lux-at-cta__button {
		max-width: 370px !important;
	}

	#lux-at-cta
		.lux-at-cta__button
		.elementor-button {
		min-height: 76px;
		padding: 21px 28px !important;
	}
}


/*======================================================================
  07.9 — IPAD / TABLET
======================================================================*/

@media (min-width: 768px) and (max-width: 1024px) {

	#lux-at-cta {
		min-height: 0;

		background:
			radial-gradient(
				circle at 105% 5%,
				transparent 0 29%,
				rgba(255, 255, 255, 0.09) 29.2% 29.4%,
				transparent 29.6% 42%,
				rgba(255, 255, 255, 0.06) 42.2% 42.4%,
				transparent 42.6%
			),
			linear-gradient(
				115deg,
				var(--lux-cta-dark),
				var(--lux-cta-bright)
			) !important;
	}

	#lux-at-cta .lux-at-cta__shell,
	#lux-at-cta .lux-at-cta__shell > .e-con-inner {
		display: flex !important;
		flex-direction: column !important;
		align-items: flex-start !important;
		gap: 0 !important;

		width: calc(100% - 48px) !important;
		max-width: 900px !important;
		min-height: 0;
	}

	#lux-at-cta .lux-at-cta__shell {
		padding-top: 105px !important;
		padding-bottom: 112px !important;
	}

	#lux-at-cta .lux-at-cta__content {
		max-width: 820px !important;
	}

	#lux-at-cta
		.lux-at-cta__eyebrow
		.elementor-widget-container {
		padding-bottom: 34px !important;
	}

	#lux-at-cta
		.lux-at-cta__title
		.elementor-heading-title,
	#lux-at-cta
		#lux-at-cta-title {
		max-width: 820px !important;

		font-size: clamp(58px, 7.7vw, 75px) !important;
	}

	#lux-at-cta .lux-at-cta__action {
		align-items: flex-start !important;

		max-width: 455px !important;

		margin: 76px 0 0 !important;
	}

	#lux-at-cta .lux-at-cta__button {
		max-width: 455px !important;
	}
}


/*======================================================================
  07.10 — IPHONE / ANDROID MOBILE
======================================================================*/

@media (max-width: 767px) {

	#lux-at-cta {
		min-height: 0;

		background:
			radial-gradient(
				circle at 122% 2%,
				transparent 0 28%,
				rgba(255, 255, 255, 0.085) 28.2% 28.5%,
				transparent 28.7% 43%,
				rgba(255, 255, 255, 0.055) 43.2% 43.5%,
				transparent 43.7%
			),
			linear-gradient(
				145deg,
				var(--lux-cta-dark) 0%,
				#783849 56%,
				var(--lux-cta-bright) 100%
			) !important;
	}

	#lux-at-cta .lux-at-cta__shell,
	#lux-at-cta .lux-at-cta__shell > .e-con-inner {
		display: flex !important;
		flex-direction: column !important;
		align-items: flex-start !important;
		gap: 0 !important;

		width: 100% !important;
		max-width: none !important;
		min-height: 0;

		margin: 0 !important;

		padding-left: max(20px, env(safe-area-inset-left)) !important;
		padding-right: max(20px, env(safe-area-inset-right)) !important;
	}

	#lux-at-cta .lux-at-cta__shell {
		padding-top: 82px !important;
		padding-bottom: 90px !important;
	}

	#lux-at-cta .lux-at-cta__content {
		width: 100% !important;
		max-width: 620px !important;

		margin: 0 auto !important;
	}

	#lux-at-cta
		.lux-at-cta__eyebrow
		.elementor-widget-container {
		padding-bottom: 29px !important;
	}

	#lux-at-cta
		.lux-at-cta__eyebrow
		.elementor-heading-title {
		font-size: 11px !important;
		line-height: 1.45 !important;
		letter-spacing: 0.20em !important;
	}

	#lux-at-cta
		.lux-at-cta__title
		.elementor-heading-title,
	#lux-at-cta
		#lux-at-cta-title {
		max-width: 620px !important;

		font-size: clamp(42px, 11.8vw, 58px) !important;
		line-height: 1.08 !important;
		letter-spacing: -0.035em !important;
		word-spacing: 0.055em !important;
	}

	#lux-at-cta .lux-at-cta__action {
		align-items: stretch !important;

		width: 100% !important;
		max-width: 620px !important;

		margin: 58px auto 0 !important;
	}

	#lux-at-cta .lux-at-cta__button {
		width: 100% !important;
		max-width: 620px !important;
	}

	#lux-at-cta
		.lux-at-cta__button
		.elementor-button {
		min-height: 72px;

		padding: 20px 24px !important;

		border-radius: 9px !important;
	}

	#lux-at-cta
		.lux-at-cta__button
		.elementor-button-text {
		font-size: 12px !important;
		line-height: 1.4 !important;
		letter-spacing: 0.12em !important;
	}
}


/*======================================================================
  07.11 — SMALL IPHONE / NARROW MOBILE
======================================================================*/

@media (max-width: 380px) {

	#lux-at-cta .lux-at-cta__shell,
	#lux-at-cta .lux-at-cta__shell > .e-con-inner {
		padding-left: max(16px, env(safe-area-inset-left)) !important;
		padding-right: max(16px, env(safe-area-inset-right)) !important;
	}

	#lux-at-cta
		.lux-at-cta__title
		.elementor-heading-title,
	#lux-at-cta
		#lux-at-cta-title {
		font-size: clamp(38px, 11vw, 46px) !important;
	}

	#lux-at-cta
		.lux-at-cta__button
		.elementor-button {
		padding-left: 20px !important;
		padding-right: 20px !important;
	}

	#lux-at-cta
		.lux-at-cta__button
		.elementor-button-text {
		font-size: 11px !important;
	}
}


/*======================================================================
  07.12 — PHONE LANDSCAPE
======================================================================*/

@media
	(max-width: 900px)
	and (orientation: landscape)
	and (max-height: 600px) {

	#lux-at-cta .lux-at-cta__shell,
	#lux-at-cta .lux-at-cta__shell > .e-con-inner {
		width: 100% !important;

		padding-left: max(28px, env(safe-area-inset-left)) !important;
		padding-right: max(28px, env(safe-area-inset-right)) !important;
	}

	#lux-at-cta .lux-at-cta__shell {
		padding-top: 72px !important;
		padding-bottom: 78px !important;
	}

	#lux-at-cta .lux-at-cta__content,
	#lux-at-cta .lux-at-cta__action {
		max-width: 760px !important;
	}

	#lux-at-cta
		.lux-at-cta__title
		.elementor-heading-title,
	#lux-at-cta
		#lux-at-cta-title {
		font-size: clamp(46px, 7vw, 60px) !important;
	}

	#lux-at-cta .lux-at-cta__action {
		margin-top: 52px !important;
	}
}


/*======================================================================
  07.13 — SAFARI / IOS STABILITY
======================================================================*/

@supports (-webkit-touch-callout: none) {

	#lux-at-cta,
	#lux-at-cta
		.lux-at-cta__button
		.elementor-button {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);

		-webkit-backface-visibility: hidden;
		backface-visibility: hidden;
	}
}


/*======================================================================
  07.14 — SECTION REVEAL
======================================================================*/

#lux-at-cta.lux-at-reveal-ready .lux-at-reveal-item {
	opacity: 0;
	transform: translate3d(0, 28px, 0);

	transition:
		opacity 1050ms cubic-bezier(0.22, 1, 0.36, 1),
		transform 1050ms cubic-bezier(0.22, 1, 0.36, 1);

	transition-delay: var(--lux-at-reveal-delay, 0ms);

	will-change: opacity, transform;
}

#lux-at-cta.lux-at-reveal-ready
	.lux-at-reveal-item.is-revealed {
	opacity: 1;
	transform: translate3d(0, 0, 0);
}

@media (max-width: 767px) {

	#lux-at-cta.lux-at-reveal-ready .lux-at-reveal-item {
		transform: translate3d(0, 20px, 0);
		transition-duration: 900ms;
	}
}


/*======================================================================
  07.15 — REDUCED MOTION
======================================================================*/

@media (prefers-reduced-motion: reduce) {

	#lux-at-cta
		.lux-at-cta__button
		.elementor-button,
	#lux-at-cta
		.lux-at-cta__button
		.elementor-button::before,
	#lux-at-cta
		.lux-at-cta__button
		.elementor-button-icon {
		transition: none !important;
	}

	#lux-at-cta.lux-at-reveal-ready .lux-at-reveal-item,
	#lux-at-cta.lux-at-reveal-ready
		.lux-at-reveal-item.is-revealed {
		opacity: 1 !important;
		transform: none !important;
		transition: none !important;
		will-change: auto !important;
	}
}