/*======================================================================
  LUXELINE — ABOUT PAGE
  FILE: about-luxeline.css
  VERSION: 1.0.0

  Scope:
  #lux-about

  Palette matched to the approved Luxeline account styling:
  Ivory: #fbf8f3 / #f4f2ee
  Dark plum: #43252e -> #25181d -> #1f171b
  Button gradient: #924558 -> #7f3b4b -> #58313b
  Champagne accent: #dec57e

  Elementor structure:
  #lux-about
    #lux-about-hero
    #lux-about-promise
    #lux-about-services
    #lux-about-why
    #lux-about-contact
======================================================================*/


/*======================================================================
  01 — FOUNDATION
======================================================================*/

#lux-about,
#lux-about *,
#lux-about *::before,
#lux-about *::after {
	box-sizing: border-box;
}

#lux-about {
	--lux-about-ivory: #fbf8f3;
	--lux-about-ivory-soft: #f4f2ee;
	--lux-about-ivory-deep: #eee8df;

	--lux-about-ink: #211a1d;
	--lux-about-copy: #6b6264;

	--lux-about-plum-1: #43252e;
	--lux-about-plum-2: #25181d;
	--lux-about-plum-3: #1f171b;

	--lux-about-rose-1: #924558;
	--lux-about-rose-2: #7f3b4b;
	--lux-about-rose-3: #58313b;

	--lux-about-gold: #dec57e;
	--lux-about-gold-deep: #c3ab71;

	--lux-about-line: rgba(67, 37, 46, 0.16);
	--lux-about-line-strong: rgba(67, 37, 46, 0.26);

	--lux-about-shell: 1240px;
	--lux-about-radius: 28px;

	position: relative !important;
	isolation: isolate;

	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;

	width: 100% !important;
	max-width: none !important;

	margin: 0 !important;

	/*
	 * The global Luxeline header is overlay/sticky.
	 * This offset keeps the About hero below it without editing the header.
	 */
	padding:
		clamp(118px, 7vw, 136px)
		0
		clamp(82px, 5.5vw, 108px) !important;

	overflow: hidden;

	background:
		radial-gradient(
			circle at 12% 4%,
			rgba(146, 69, 88, 0.045),
			transparent 26%
		),
		linear-gradient(
			180deg,
			#fbf8f3 0%,
			#f5f1eb 52%,
			#f4f2ee 100%
		) !important;

	color: var(--lux-about-ink) !important;

	-webkit-tap-highlight-color: transparent;
}

#lux-about > .e-con-inner {
	display: contents !important;
}

#lux-about :is(h1, h2, h3, p) {
	margin: 0;
}


/*======================================================================
  02 — SHARED SECTION WIDTH
======================================================================*/

#lux-about
	.lux-about-section {
	position: relative !important;
	isolation: isolate;

	width: min(
		calc(100% - 72px),
		var(--lux-about-shell)
	) !important;
	max-width: var(--lux-about-shell) !important;

	margin:
		0
		auto
		clamp(28px, 2.3vw, 40px) !important;
}

#lux-about
	.lux-about-section:last-child {
	margin-bottom: 0 !important;
}


/*======================================================================
  03 — SHARED TYPOGRAPHY
======================================================================*/

#lux-about
	:is(
		.lux-about-hero__eyebrow,
		.lux-about-promise__eyebrow,
		.lux-about-services__eyebrow,
		.lux-about-why__eyebrow,
		.lux-about-contact__eyebrow
	)
	.elementor-heading-title {
	color: var(--lux-about-rose-2) !important;
	-webkit-text-fill-color:
		var(--lux-about-rose-2) !important;

	font-family:
		"Manrope",
		Arial,
		sans-serif !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	line-height: 1.45 !important;
	letter-spacing: 0.20em !important;
	text-transform: uppercase !important;
}

#lux-about
	:is(
		.lux-about-hero__title,
		.lux-about-promise__title,
		.lux-about-services__title,
		.lux-about-why__title,
		.lux-about-contact__title
	)
	.elementor-heading-title,
#lux-about
	:is(
		#lux-about-title,
		#lux-about-promise-title,
		#lux-about-services-title,
		#lux-about-why-title,
		#lux-about-contact-title
	) {
	color: var(--lux-about-ink) !important;
	-webkit-text-fill-color:
		var(--lux-about-ink) !important;

	font-family:
		"Cinzel",
		Georgia,
		"Times New Roman",
		serif !important;
	font-weight: 400 !important;
	letter-spacing: -0.045em !important;

	text-wrap: balance;
}

#lux-about
	:is(
		.lux-about-hero__description,
		.lux-about-services__description,
		.lux-about-contact__description,
		.lux-about-item__description,
		.lux-about-contact__text
	)
	:is(
		.elementor-widget-container,
		p
	) {
	color: var(--lux-about-copy) !important;
	-webkit-text-fill-color:
		var(--lux-about-copy) !important;

	font-family:
		"Manrope",
		Arial,
		sans-serif !important;
	font-weight: 400 !important;
	letter-spacing: -0.015em !important;
}


/*======================================================================
  04 — DECORATIVE DIVIDERS
======================================================================*/

#lux-about
	:is(
		.lux-about-hero__divider,
		.lux-about-promise__divider,
		.lux-about-services__divider,
		.lux-about-why__divider
	) {
	position: relative;

	width: 54px !important;
	height: 2px !important;

	margin:
		clamp(22px, 1.7vw, 28px)
		0
		0 !important;
	padding: 0 !important;

	background:
		linear-gradient(
			90deg,
			var(--lux-about-rose-1),
			var(--lux-about-rose-3)
		) !important;
}

#lux-about
	:is(
		.lux-about-promise__divider,
		.lux-about-why__divider
	) {
	margin-left: auto !important;
	margin-right: auto !important;
}


/*======================================================================
  05 — HERO
======================================================================*/

#lux-about-hero {
	display: grid !important;
	grid-template-columns:
		minmax(0, 1.02fr)
		minmax(0, 0.98fr) !important;
	align-items: stretch !important;

	min-height: clamp(470px, 37vw, 580px);

	overflow: hidden;

	border:
		1px solid rgba(67, 37, 46, 0.14) !important;
	border-radius: var(--lux-about-radius) !important;

	background: var(--lux-about-ivory) !important;

	box-shadow:
		0 24px 70px rgba(48, 30, 36, 0.08);
}

#lux-about-hero > .e-con-inner {
	display: grid !important;
	grid-template-columns:
		minmax(0, 1.02fr)
		minmax(0, 0.98fr) !important;
	align-items: stretch !important;

	width: 100% !important;
}

#lux-about
	.lux-about-hero__content {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	justify-content: center !important;

	min-width: 0;

	margin: 0 !important;
	padding:
		clamp(54px, 5vw, 82px)
		clamp(48px, 5vw, 78px) !important;

	background:
		radial-gradient(
			circle at 10% 10%,
			rgba(222, 197, 126, 0.12),
			transparent 35%
		),
		var(--lux-about-ivory) !important;
}

#lux-about
	.lux-about-hero__content
	> .e-con-inner {
	display: contents !important;
}

#lux-about
	.lux-about-hero__title {
	width: 100% !important;
	max-width: 620px !important;

	margin:
		clamp(21px, 1.6vw, 26px)
		0
		0 !important;
}

#lux-about
	.lux-about-hero__title
	.elementor-heading-title,
#lux-about
	#lux-about-title {
	font-size: clamp(54px, 4.4vw, 76px) !important;
	line-height: 1.06 !important;
}

#lux-about
	.lux-about-hero__description {
	width: 100% !important;
	max-width: 590px !important;

	margin:
		clamp(27px, 2.2vw, 36px)
		0
		0 !important;
}

#lux-about
	.lux-about-hero__description
	:is(
		.elementor-widget-container,
		p
	) {
	font-size: clamp(16px, 1.08vw, 18px) !important;
	line-height: 1.78 !important;
}

#lux-about
	.lux-about-hero__media {
	position: relative !important;

	min-width: 0;
	min-height: 100%;

	margin: 0 !important;
	padding: 0 !important;

	overflow: hidden;
}

#lux-about
	.lux-about-hero__media
	> .e-con-inner {
	display: contents !important;
}

#lux-about
	.lux-about-hero__image,
#lux-about
	.lux-about-hero__image
	.elementor-widget-container {
	width: 100% !important;
	height: 100% !important;

	margin: 0 !important;
	padding: 0 !important;
}

#lux-about
	.lux-about-hero__image
	img {
	display: block;

	width: 100% !important;
	height: 100% !important;

	min-height: clamp(470px, 37vw, 580px);

	object-fit: cover !important;
	object-position: 57% center !important;
}


/*======================================================================
  06 — PROMISE SECTION
======================================================================*/

#lux-about-promise {
	display: flex !important;
	flex-direction: column !important;

	padding:
		clamp(66px, 5.2vw, 86px)
		clamp(42px, 4vw, 64px)
		clamp(58px, 4.6vw, 76px) !important;

	border:
		1px solid rgba(67, 37, 46, 0.10) !important;
	border-radius: var(--lux-about-radius) !important;

	background:
		linear-gradient(
			180deg,
			#fffdf9 0%,
			#f8f4ee 100%
		) !important;

	box-shadow:
		0 18px 55px rgba(48, 30, 36, 0.055);
}

#lux-about-promise > .e-con-inner {
	display: contents !important;
}

#lux-about
	.lux-about-promise__header {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;

	width: 100% !important;

	margin: 0 auto !important;
	padding: 0 !important;

	text-align: center;
}

#lux-about
	.lux-about-promise__header
	> .e-con-inner {
	display: contents !important;
}

#lux-about
	.lux-about-promise__title {
	width: 100% !important;
	max-width: 760px !important;

	margin:
		18px
		auto
		0 !important;
}

#lux-about
	.lux-about-promise__title
	.elementor-heading-title,
#lux-about
	#lux-about-promise-title {
	font-size: clamp(42px, 3.35vw, 58px) !important;
	line-height: 1.08 !important;
	text-align: center !important;
}

#lux-about
	.lux-about-promise__items {
	display: grid !important;
	grid-template-columns:
		repeat(4, minmax(0, 1fr)) !important;
	gap: 0 !important;

	width: 100% !important;

	margin:
		clamp(48px, 4vw, 64px)
		0
		0 !important;
	padding: 0 !important;
}

#lux-about
	.lux-about-promise__items
	> .e-con-inner {
	display: grid !important;
	grid-template-columns:
		repeat(4, minmax(0, 1fr)) !important;
	gap: 0 !important;

	width: 100% !important;
}

#lux-about
	.lux-about-promise__item {
	position: relative;

	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;

	min-width: 0;

	margin: 0 !important;
	padding:
		4px
		clamp(20px, 2vw, 30px)
		8px !important;

	text-align: center;
}

#lux-about
	.lux-about-promise__item
	> .e-con-inner {
	display: contents !important;
}

#lux-about
	.lux-about-promise__item:not(
		.lux-about-promise__item--peace
	)::after {
	content: "";

	position: absolute;
	top: 12px;
	right: 0;
	bottom: 4px;

	width: 1px;

	background:
		linear-gradient(
			180deg,
			transparent,
			var(--lux-about-line),
			transparent
		);
}


/*======================================================================
  07 — CODE-GENERATED ICONS
======================================================================*/

#lux-about
	.lux-about-icon,
#lux-about
	.lux-about-contact__icon {
	--lux-about-icon-mask: none;

	position: relative !important;

	display: flex !important;
	align-items: center !important;
	justify-content: center !important;

	flex: 0 0 auto;

	width: 58px !important;
	height: 58px !important;

	margin: 0 !important;
	padding: 0 !important;

	border:
		1px solid rgba(127, 59, 75, 0.13) !important;
	border-radius: 50% !important;

	background:
		linear-gradient(
			145deg,
			rgba(251, 248, 243, 0.98),
			rgba(238, 232, 223, 0.92)
		) !important;

	box-shadow:
		0 10px 28px rgba(67, 37, 46, 0.07);
}

#lux-about
	.lux-about-icon::before,
#lux-about
	.lux-about-contact__icon::before {
	content: "";

	display: block;

	width: 27px;
	height: 27px;

	background:
		linear-gradient(
			135deg,
			var(--lux-about-rose-1),
			var(--lux-about-rose-3)
		);

	-webkit-mask:
		var(--lux-about-icon-mask)
		center /
		contain
		no-repeat;
	mask:
		var(--lux-about-icon-mask)
		center /
		contain
		no-repeat;
}

/* Shield — Discretion */
#lux-about
	.lux-about-icon--discretion {
	--lux-about-icon-mask:
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2 4.5 5v6.1c0 5 3.2 9.4 7.5 10.9 4.3-1.5 7.5-5.9 7.5-10.9V5L12 2Zm0 2.2 5.5 2.2v4.7c0 3.9-2.3 7.5-5.5 8.8-3.2-1.3-5.5-4.9-5.5-8.8V6.4L12 4.2Z'/%3E%3C/svg%3E");
}

/* Clock — Reliability */
#lux-about
	.lux-about-icon--reliability {
	--lux-about-icon-mask:
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20Zm0 2a8 8 0 1 1 0 16 8 8 0 0 1 0-16Zm-1 2v6.4l4.7 2.8 1-1.7-3.7-2.2V6h-2Z'/%3E%3C/svg%3E");
}

/* Chauffeur — Professionalism */
#lux-about
	.lux-about-icon--professionalism {
	--lux-about-icon-mask:
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2a4 4 0 1 0 0 8 4 4 0 0 0 0-8Zm0 2a2 2 0 1 1 0 4 2 2 0 0 1 0-4ZM5 21h14v-3.2c0-3.4-2.8-6.2-6.2-6.2h-1.6C7.8 11.6 5 14.4 5 17.8V21Zm2-2v-1.2c0-2.3 1.9-4.2 4.2-4.2h1.6c2.3 0 4.2 1.9 4.2 4.2V19H7Z'/%3E%3C/svg%3E");
}

/* Pin — Peace of Mind */
#lux-about
	.lux-about-icon--peace {
	--lux-about-icon-mask:
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2a7 7 0 0 0-7 7c0 5.1 7 13 7 13s7-7.9 7-13a7 7 0 0 0-7-7Zm0 2a5 5 0 0 1 5 5c0 3.2-3.4 8-5 10.1C10.4 17 7 12.2 7 9a5 5 0 0 1 5-5Zm0 2.5A2.5 2.5 0 1 0 12 11a2.5 2.5 0 0 0 0-5Z'/%3E%3C/svg%3E");
}

/* Person — Client Focused */
#lux-about
	.lux-about-icon--client {
	--lux-about-icon-mask:
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2a4 4 0 1 0 0 8 4 4 0 0 0 0-8Zm0 2a2 2 0 1 1 0 4 2 2 0 0 1 0-4ZM4 22h16v-3c0-4.1-3.1-7-8-7s-8 2.9-8 7v3Zm2-2v-1c0-2.8 2.2-5 6-5s6 2.2 6 5v1H6Z'/%3E%3C/svg%3E");
}

/* Star — Attention to Detail */
#lux-about
	.lux-about-icon--detail {
	--lux-about-icon-mask:
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='m12 2.5 2.9 5.9 6.5.9-4.7 4.6 1.1 6.5-5.8-3-5.8 3 1.1-6.5-4.7-4.6 6.5-.9L12 2.5Zm0 4.5-1.6 3.2-3.5.5 2.5 2.5-.6 3.5 3.2-1.7 3.2 1.7-.6-3.5 2.5-2.5-3.5-.5L12 7Z'/%3E%3C/svg%3E");
}

/* Car — Comfort */
#lux-about
	.lux-about-icon--comfort {
	--lux-about-icon-mask:
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M5.3 5h13.4l2.1 5H22v8h-2v2h-3v-2H7v2H4v-2H2v-8h1.2l2.1-5Zm1.4 2-1.3 3h13.2l-1.3-3H6.7ZM4 12v4h16v-4H4Zm2 1h3v2H6v-2Zm9 0h3v2h-3v-2Z'/%3E%3C/svg%3E");
}

/* Check — Integrity */
#lux-about
	.lux-about-icon--integrity {
	--lux-about-icon-mask:
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2a10 10 0 1 0 10 10A10 10 0 0 0 12 2Zm0 2a8 8 0 1 1-8 8 8 8 0 0 1 8-8Zm4.6 4.6-6 6-3.2-3.2L6 12.8l4.6 4.6L18 10l-1.4-1.4Z'/%3E%3C/svg%3E");
}

/* Headset — Communication */
#lux-about
	.lux-about-icon--communication {
	--lux-about-icon-mask:
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 3a8 8 0 0 0-8 8v6a3 3 0 0 0 3 3h2v-7H6v-2a6 6 0 0 1 12 0v2h-3v7h3v1h-5v2h5a2 2 0 0 0 2-2V11a8 8 0 0 0-8-8ZM6 15h1v3H7a1 1 0 0 1-1-1v-2Zm11 0h1v3h-1v-3Z'/%3E%3C/svg%3E");
}

/* Phone */
#lux-about
	.lux-about-contact__icon--phone {
	--lux-about-icon-mask:
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='m6.6 2 4 4-2.2 2.2c1.1 2.3 3 4.2 5.4 5.4L16 11.4l4 4-2.8 2.8c-.9.9-2.2 1.3-3.4.9A17.3 17.3 0 0 1 4.9 10.2c-.4-1.2 0-2.5.9-3.4L6.6 6V2Z'/%3E%3C/svg%3E");
}

/* Email */
#lux-about
	.lux-about-contact__icon--email {
	--lux-about-icon-mask:
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M3 4h18a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2Zm0 2 9 6 9-6H3Zm18 12V8.4l-9 6-9-6V18h18Z'/%3E%3C/svg%3E");
}

/* Address */
#lux-about
	.lux-about-contact__icon--address {
	--lux-about-icon-mask:
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2a7 7 0 0 0-7 7c0 5.1 7 13 7 13s7-7.9 7-13a7 7 0 0 0-7-7Zm0 2a5 5 0 0 1 5 5c0 3.2-3.4 8-5 10.1C10.4 17 7 12.2 7 9a5 5 0 0 1 5-5Zm0 2.5A2.5 2.5 0 1 0 12 11a2.5 2.5 0 0 0 0-5Z'/%3E%3C/svg%3E");
}


/*======================================================================
  08 — SHARED ITEM TEXT
======================================================================*/

#lux-about
	.lux-about-item__title {
	width: 100% !important;

	margin:
		clamp(18px, 1.4vw, 22px)
		0
		0 !important;
}

#lux-about
	.lux-about-item__title
	.elementor-heading-title {
	color: var(--lux-about-ink) !important;
	-webkit-text-fill-color:
		var(--lux-about-ink) !important;

	font-family:
		"Manrope",
		Arial,
		sans-serif !important;
	font-size: clamp(16px, 1.12vw, 18px) !important;
	font-weight: 700 !important;
	line-height: 1.35 !important;
	letter-spacing: -0.02em !important;
	text-align: center !important;
}

#lux-about
	.lux-about-item__description {
	width: 100% !important;
	max-width: 240px !important;

	margin:
		12px
		auto
		0 !important;
}

#lux-about
	.lux-about-item__description
	:is(
		.elementor-widget-container,
		p
	) {
	font-size: clamp(13px, 0.9vw, 15px) !important;
	line-height: 1.70 !important;
	text-align: center !important;
}


/*======================================================================
  09 — WHAT WE DO
======================================================================*/

#lux-about-services {
	display: grid !important;
	grid-template-columns:
		minmax(0, 0.92fr)
		minmax(0, 1.08fr) !important;
	align-items: center !important;
	gap: clamp(52px, 5.5vw, 86px) !important;

	padding:
		clamp(62px, 5vw, 82px)
		clamp(42px, 4vw, 64px) !important;

	border:
		1px solid rgba(67, 37, 46, 0.10) !important;
	border-radius: var(--lux-about-radius) !important;

	background:
		linear-gradient(
			145deg,
			#fbf8f3,
			#f2ede6
		) !important;

	box-shadow:
		0 18px 55px rgba(48, 30, 36, 0.05);
}

#lux-about-services > .e-con-inner {
	display: grid !important;
	grid-template-columns:
		minmax(0, 0.92fr)
		minmax(0, 1.08fr) !important;
	align-items: center !important;
	gap: clamp(52px, 5.5vw, 86px) !important;

	width: 100% !important;
}

#lux-about
	.lux-about-services__content {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;

	min-width: 0;

	margin: 0 !important;
	padding: 0 !important;
}

#lux-about
	.lux-about-services__content
	> .e-con-inner {
	display: contents !important;
}

#lux-about
	.lux-about-services__title {
	width: 100% !important;
	max-width: 580px !important;

	margin:
		18px
		0
		0 !important;
}

#lux-about
	.lux-about-services__title
	.elementor-heading-title,
#lux-about
	#lux-about-services-title {
	font-size: clamp(44px, 3.6vw, 62px) !important;
	line-height: 1.08 !important;
}

#lux-about
	.lux-about-services__description {
	width: 100% !important;
	max-width: 575px !important;

	margin:
		22px
		0
		0 !important;
}

#lux-about
	.lux-about-services__description
	:is(
		.elementor-widget-container,
		p
	) {
	font-size: clamp(15px, 1vw, 17px) !important;
	line-height: 1.76 !important;
}

#lux-about
	.lux-about-services__button {
	width: auto !important;

	margin:
		clamp(28px, 2.4vw, 38px)
		0
		0 !important;
}

#lux-about
	.lux-about-services__button
	.elementor-button {
	position: relative;
	isolation: isolate;

	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;

	min-height: 54px;

	padding:
		16px
		28px !important;

	overflow: hidden;

	border: 0 !important;
	border-radius: 999px !important;

	background:
		linear-gradient(
			135deg,
			var(--lux-about-rose-1) 0%,
			var(--lux-about-rose-2) 52%,
			var(--lux-about-rose-3) 100%
		) !important;

	box-shadow:
		0 14px 30px rgba(88, 49, 59, 0.20);

	color: #ffffff !important;
	-webkit-text-fill-color: #ffffff !important;

	text-decoration: none !important;

	transition:
		transform 280ms ease,
		box-shadow 280ms ease,
		filter 280ms ease;
}

#lux-about
	.lux-about-services__button
	.elementor-button-text {
	display: inline-flex;
	align-items: center;
	gap: 13px;

	color: inherit !important;
	-webkit-text-fill-color: inherit !important;

	font-family:
		"Manrope",
		Arial,
		sans-serif !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
	letter-spacing: 0.08em !important;
	text-transform: uppercase !important;
}

#lux-about
	.lux-about-services__button
	.elementor-button-text::after {
	content: "→";

	font-size: 18px;
	font-weight: 500;
	line-height: 1;

	transition:
		transform 300ms cubic-bezier(0.22, 1, 0.36, 1);
}

#lux-about
	.lux-about-services__button
	.elementor-button:focus-visible {
	outline:
		2px solid var(--lux-about-plum-1) !important;
	outline-offset: 4px;
}

@media (hover: hover) and (pointer: fine) {

	#lux-about
		.lux-about-services__button
		.elementor-button:hover {
		transform: translateY(-2px);

		box-shadow:
			0 17px 34px rgba(88, 49, 59, 0.27);

		filter: saturate(1.05);
	}

	#lux-about
		.lux-about-services__button
		.elementor-button:hover
		.elementor-button-text::after {
		transform: translateX(5px);
	}
}

#lux-about
	.lux-about-services__media {
	min-width: 0;

	margin: 0 !important;
	padding: 0 !important;
}

#lux-about
	.lux-about-services__media
	> .e-con-inner {
	display: contents !important;
}

#lux-about
	.lux-about-services__image,
#lux-about
	.lux-about-services__image
	.elementor-widget-container {
	width: 100% !important;
	height: 100% !important;

	margin: 0 !important;
	padding: 0 !important;
}

#lux-about
	.lux-about-services__image
	img {
	display: block;

	width: 100% !important;
	height: clamp(330px, 29vw, 420px) !important;

	object-fit: cover !important;
	object-position: center !important;

	border-radius: 22px !important;

	box-shadow:
		0 20px 46px rgba(48, 30, 36, 0.12);
}


/*======================================================================
  10 — WHY CHOOSE LUXELINE
======================================================================*/

#lux-about-why {
	display: flex !important;
	flex-direction: column !important;

	padding:
		clamp(66px, 5.2vw, 86px)
		clamp(36px, 3.6vw, 58px)
		clamp(58px, 4.6vw, 76px) !important;

	border:
		1px solid rgba(67, 37, 46, 0.10) !important;
	border-radius: var(--lux-about-radius) !important;

	background:
		linear-gradient(
			180deg,
			#f8f4ee 0%,
			#fffdf9 100%
		) !important;

	box-shadow:
		0 18px 55px rgba(48, 30, 36, 0.05);
}

#lux-about-why > .e-con-inner {
	display: contents !important;
}

#lux-about
	.lux-about-why__header {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;

	width: 100% !important;

	margin: 0 auto !important;
	padding: 0 !important;

	text-align: center;
}

#lux-about
	.lux-about-why__header
	> .e-con-inner {
	display: contents !important;
}

#lux-about
	.lux-about-why__title {
	width: 100% !important;
	max-width: 790px !important;

	margin:
		18px
		auto
		0 !important;
}

#lux-about
	.lux-about-why__title
	.elementor-heading-title,
#lux-about
	#lux-about-why-title {
	font-size: clamp(42px, 3.35vw, 58px) !important;
	line-height: 1.08 !important;
	text-align: center !important;
}

#lux-about
	.lux-about-why__items {
	display: grid !important;
	grid-template-columns:
		repeat(5, minmax(0, 1fr)) !important;
	gap: 0 !important;

	width: 100% !important;

	margin:
		clamp(48px, 4vw, 64px)
		0
		0 !important;
	padding: 0 !important;
}

#lux-about
	.lux-about-why__items
	> .e-con-inner {
	display: grid !important;
	grid-template-columns:
		repeat(5, minmax(0, 1fr)) !important;
	gap: 0 !important;

	width: 100% !important;
}

#lux-about
	.lux-about-why__item {
	position: relative;

	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;

	min-width: 0;

	margin: 0 !important;
	padding:
		4px
		clamp(15px, 1.4vw, 22px)
		8px !important;

	text-align: center;
}

#lux-about
	.lux-about-why__item
	> .e-con-inner {
	display: contents !important;
}

#lux-about
	.lux-about-why__item:not(
		.lux-about-why__item--communication
	)::after {
	content: "";

	position: absolute;
	top: 12px;
	right: 0;
	bottom: 4px;

	width: 1px;

	background:
		linear-gradient(
			180deg,
			transparent,
			var(--lux-about-line),
			transparent
		);
}


/*======================================================================
  11 — CONTACT CTA
======================================================================*/

#lux-about-contact {
	display: flex !important;
	flex-direction: column !important;

	padding:
		clamp(58px, 4.8vw, 78px)
		clamp(42px, 4vw, 64px)
		clamp(46px, 4vw, 66px) !important;

	border:
		1px solid rgba(67, 37, 46, 0.12) !important;
	border-radius: var(--lux-about-radius) !important;

	background:
		linear-gradient(
			145deg,
			#fbf8f3 0%,
			#f4f0e9 100%
		) !important;

	box-shadow:
		0 20px 58px rgba(48, 30, 36, 0.06);
}

#lux-about-contact > .e-con-inner {
	display: contents !important;
}

#lux-about
	.lux-about-contact__header {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;

	width: 100% !important;

	margin: 0 auto !important;
	padding: 0 !important;

	text-align: center;
}

#lux-about
	.lux-about-contact__header
	> .e-con-inner {
	display: contents !important;
}

#lux-about
	.lux-about-contact__title {
	width: 100% !important;
	max-width: 850px !important;

	margin:
		16px
		auto
		0 !important;
}

#lux-about
	.lux-about-contact__title
	.elementor-heading-title,
#lux-about
	#lux-about-contact-title {
	font-size: clamp(42px, 3.45vw, 60px) !important;
	line-height: 1.08 !important;
	text-align: center !important;
}

#lux-about
	.lux-about-contact__description {
	width: 100% !important;
	max-width: 700px !important;

	margin:
		18px
		auto
		0 !important;
}

#lux-about
	.lux-about-contact__description
	:is(
		.elementor-widget-container,
		p
	) {
	font-size: clamp(15px, 1vw, 17px) !important;
	line-height: 1.68 !important;
	text-align: center !important;
}

#lux-about
	.lux-about-contact__details {
	display: grid !important;
	grid-template-columns:
		repeat(3, minmax(0, 1fr)) !important;
	gap: 0 !important;

	width: 100% !important;

	margin:
		clamp(42px, 3.5vw, 56px)
		0
		0 !important;
	padding:
		clamp(25px, 2.2vw, 34px)
		0
		0 !important;

	border-top:
		1px solid var(--lux-about-line) !important;
}

#lux-about
	.lux-about-contact__details
	> .e-con-inner {
	display: grid !important;
	grid-template-columns:
		repeat(3, minmax(0, 1fr)) !important;
	gap: 0 !important;

	width: 100% !important;
}

#lux-about
	.lux-about-contact__item {
	position: relative;

	display: grid !important;
	grid-template-columns:
		54px
		minmax(0, 1fr) !important;
	align-items: center !important;
	column-gap: 18px !important;

	min-width: 0;

	margin: 0 !important;
	padding:
		6px
		clamp(22px, 2.2vw, 34px) !important;
}

#lux-about
	.lux-about-contact__item
	> .e-con-inner {
	display: contents !important;
}

#lux-about
	.lux-about-contact__item:not(
		.lux-about-contact__item--address
	)::after {
	content: "";

	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;

	width: 1px;

	background:
		linear-gradient(
			180deg,
			transparent,
			var(--lux-about-line-strong),
			transparent
		);
}

#lux-about
	.lux-about-contact__icon {
	width: 48px !important;
	height: 48px !important;
}

#lux-about
	.lux-about-contact__icon::before {
	width: 22px;
	height: 22px;
}

#lux-about
	.lux-about-contact__text {
	min-width: 0;

	margin: 0 !important;
	padding: 0 !important;
}

#lux-about
	.lux-about-contact__text
	:is(
		.elementor-widget-container,
		p
	) {
	font-size: clamp(13px, 0.95vw, 15px) !important;
	line-height: 1.62 !important;
}


/*======================================================================
  12 — LAPTOP
======================================================================*/

@media (min-width: 1025px) and (max-width: 1536px) {

	#lux-about {
		padding-top: 124px !important;
	}

	#lux-about
		.lux-about-section {
		width: min(
			calc(100% - 64px),
			1180px
		) !important;
	}

	#lux-about
		.lux-about-hero__content {
		padding:
			54px
			54px !important;
	}

	#lux-about
		.lux-about-hero__title
		.elementor-heading-title,
	#lux-about
		#lux-about-title {
		font-size: clamp(50px, 4.5vw, 68px) !important;
	}

	#lux-about-services {
		gap: 54px !important;
	}

	#lux-about
		.lux-about-why__item {
		padding-left: 14px !important;
		padding-right: 14px !important;
	}
}


/*======================================================================
  13 — TABLET / IPAD
======================================================================*/

@media (min-width: 768px) and (max-width: 1024px) {

	#lux-about {
		padding:
			118px
			0
			86px !important;
	}

	#lux-about
		.lux-about-section {
		width: calc(100% - 48px) !important;
		max-width: 900px !important;
	}

	#lux-about-hero,
	#lux-about-hero > .e-con-inner {
		grid-template-columns: 1fr !important;
	}

	#lux-about-hero {
		min-height: 0;
	}

	#lux-about
		.lux-about-hero__content {
		padding:
			58px
			48px !important;
	}

	#lux-about
		.lux-about-hero__title {
		max-width: 700px !important;
	}

	#lux-about
		.lux-about-hero__title
		.elementor-heading-title,
	#lux-about
		#lux-about-title {
		font-size: clamp(54px, 7vw, 68px) !important;
	}

	#lux-about
		.lux-about-hero__image
		img {
		min-height: 390px;
		height: 390px !important;
	}

	#lux-about
		.lux-about-promise__items,
	#lux-about
		.lux-about-promise__items
		> .e-con-inner {
		grid-template-columns:
			repeat(2, minmax(0, 1fr)) !important;
		row-gap: 42px !important;
	}

	#lux-about
		.lux-about-promise__item--reliability::after {
		display: none;
	}

	#lux-about
		.lux-about-promise__item--discretion,
	#lux-about
		.lux-about-promise__item--reliability {
		padding-bottom: 34px !important;

		border-bottom:
			1px solid var(--lux-about-line) !important;
	}

	#lux-about-services,
	#lux-about-services > .e-con-inner {
		grid-template-columns: 1fr !important;
		gap: 44px !important;
	}

	#lux-about
		.lux-about-services__content,
	#lux-about
		.lux-about-services__title,
	#lux-about
		.lux-about-services__description {
		max-width: 700px !important;
	}

	#lux-about
		.lux-about-services__image
		img {
		height: 390px !important;
	}

	#lux-about
		.lux-about-why__items,
	#lux-about
		.lux-about-why__items
		> .e-con-inner {
		grid-template-columns:
			repeat(2, minmax(0, 1fr)) !important;
		row-gap: 42px !important;
	}

	#lux-about
		.lux-about-why__item::after {
		display: none !important;
	}

	#lux-about
		.lux-about-why__item {
		padding:
			6px
			28px
			32px !important;

		border-bottom:
			1px solid var(--lux-about-line) !important;
	}

	#lux-about
		.lux-about-why__item--communication {
		grid-column: 1 / -1;

		width: min(50%, 320px) !important;

		margin-left: auto !important;
		margin-right: auto !important;

		border-bottom: 0 !important;
	}

	#lux-about
		.lux-about-contact__details,
	#lux-about
		.lux-about-contact__details
		> .e-con-inner {
		grid-template-columns: 1fr !important;
	}

	#lux-about
		.lux-about-contact__item {
		padding:
			22px
			8px !important;

		border-bottom:
			1px solid var(--lux-about-line) !important;
	}

	#lux-about
		.lux-about-contact__item::after {
		display: none !important;
	}

	#lux-about
		.lux-about-contact__item--address {
		border-bottom: 0 !important;
	}
}


/*======================================================================
  14 — MOBILE
======================================================================*/

@media (max-width: 767px) {

	#lux-about {
		padding:
			138px
			max(17px, env(safe-area-inset-right))
			72px
			max(17px, env(safe-area-inset-left)) !important;
	}

	#lux-about
		.lux-about-section {
		width: 100% !important;
		max-width: none !important;

		margin-bottom: 22px !important;

		border-radius: 20px !important;
	}

	#lux-about-hero,
	#lux-about-hero > .e-con-inner {
		grid-template-columns: 1fr !important;
	}

	#lux-about-hero {
		min-height: 0;
	}

	#lux-about
		.lux-about-hero__content {
		padding:
			44px
			24px
			42px !important;
	}

	#lux-about
		:is(
			.lux-about-hero__eyebrow,
			.lux-about-promise__eyebrow,
			.lux-about-services__eyebrow,
			.lux-about-why__eyebrow,
			.lux-about-contact__eyebrow
		)
		.elementor-heading-title {
		font-size: 9px !important;
		letter-spacing: 0.17em !important;
	}

	#lux-about
		.lux-about-hero__title {
		margin-top: 17px !important;
	}

	#lux-about
		.lux-about-hero__title
		.elementor-heading-title,
	#lux-about
		#lux-about-title {
		font-size: clamp(39px, 11.5vw, 52px) !important;
		line-height: 1.06 !important;
		letter-spacing: -0.042em !important;
	}

	#lux-about
		.lux-about-hero__description {
		margin-top: 24px !important;
	}

	#lux-about
		.lux-about-hero__description
		:is(
			.elementor-widget-container,
			p
		) {
		font-size: 15px !important;
		line-height: 1.72 !important;
	}

	#lux-about
		.lux-about-hero__image
		img {
		min-height: 285px;
		height: 285px !important;

		object-position: 57% center !important;
	}

	#lux-about-promise,
	#lux-about-why,
	#lux-about-contact {
		padding:
			48px
			22px
			46px !important;
	}

	#lux-about
		.lux-about-promise__title
		.elementor-heading-title,
	#lux-about
		#lux-about-promise-title,
	#lux-about
		.lux-about-why__title
		.elementor-heading-title,
	#lux-about
		#lux-about-why-title,
	#lux-about
		.lux-about-contact__title
		.elementor-heading-title,
	#lux-about
		#lux-about-contact-title {
		font-size: clamp(34px, 9.7vw, 45px) !important;
		line-height: 1.08 !important;
		letter-spacing: -0.04em !important;
	}

	#lux-about
		.lux-about-promise__items,
	#lux-about
		.lux-about-promise__items
		> .e-con-inner,
	#lux-about
		.lux-about-why__items,
	#lux-about
		.lux-about-why__items
		> .e-con-inner {
		grid-template-columns: 1fr !important;
		row-gap: 0 !important;

		margin-top: 38px !important;
	}

	#lux-about
		.lux-about-promise__item,
	#lux-about
		.lux-about-why__item,
	#lux-about
		.lux-about-why__item--communication {
		width: 100% !important;

		margin: 0 !important;
		padding:
			28px
			3px
			30px !important;

		border-bottom:
			1px solid var(--lux-about-line) !important;
	}

	#lux-about
		.lux-about-promise__item::after,
	#lux-about
		.lux-about-why__item::after {
		display: none !important;
	}

	#lux-about
		.lux-about-promise__item:first-child,
	#lux-about
		.lux-about-why__item:first-child {
		padding-top: 4px !important;
	}

	#lux-about
		.lux-about-promise__item--peace,
	#lux-about
		.lux-about-why__item--communication {
		padding-bottom: 4px !important;

		border-bottom: 0 !important;
	}

	#lux-about
		.lux-about-item__title
		.elementor-heading-title {
		font-size: 17px !important;
	}

	#lux-about
		.lux-about-item__description {
		max-width: 310px !important;
	}

	#lux-about
		.lux-about-item__description
		:is(
			.elementor-widget-container,
			p
		) {
		font-size: 14px !important;
		line-height: 1.68 !important;
	}

	#lux-about-services,
	#lux-about-services > .e-con-inner {
		grid-template-columns: 1fr !important;
		gap: 38px !important;
	}

	#lux-about-services {
		padding:
			48px
			22px !important;
	}

	#lux-about
		.lux-about-services__title
		.elementor-heading-title,
	#lux-about
		#lux-about-services-title {
		font-size: clamp(36px, 10.3vw, 48px) !important;
		line-height: 1.07 !important;
	}

	#lux-about
		.lux-about-services__description {
		margin-top: 19px !important;
	}

	#lux-about
		.lux-about-services__description
		:is(
			.elementor-widget-container,
			p
		) {
		font-size: 15px !important;
		line-height: 1.72 !important;
	}

	#lux-about
		.lux-about-services__button {
		width: 100% !important;
	}

	#lux-about
		.lux-about-services__button
		.elementor-widget-container {
		width: 100% !important;
	}

	#lux-about
		.lux-about-services__button
		.elementor-button {
		width: 100% !important;
		min-height: 58px;
	}

	#lux-about
		.lux-about-services__image
		img {
		height: 280px !important;

		border-radius: 16px !important;
	}

	#lux-about
		.lux-about-contact__details,
	#lux-about
		.lux-about-contact__details
		> .e-con-inner {
		grid-template-columns: 1fr !important;
	}

	#lux-about
		.lux-about-contact__item {
		grid-template-columns:
			46px
			minmax(0, 1fr) !important;
		column-gap: 15px !important;

		padding:
			20px
			0 !important;

		border-bottom:
			1px solid var(--lux-about-line) !important;
	}

	#lux-about
		.lux-about-contact__item::after {
		display: none !important;
	}

	#lux-about
		.lux-about-contact__item--address {
		border-bottom: 0 !important;
	}

	#lux-about
		.lux-about-contact__icon {
		width: 44px !important;
		height: 44px !important;
	}

	#lux-about
		.lux-about-contact__text
		:is(
			.elementor-widget-container,
			p
		) {
		font-size: 14px !important;
		line-height: 1.58 !important;

		overflow-wrap: anywhere;
	}
}


/*======================================================================
  15 — NARROW MOBILE
======================================================================*/

@media (max-width: 380px) {

	#lux-about {
		padding:
			132px
			max(14px, env(safe-area-inset-right))
			64px
			max(14px, env(safe-area-inset-left)) !important;
	}

	#lux-about
		.lux-about-hero__content,
	#lux-about-promise,
	#lux-about-why,
	#lux-about-contact,
	#lux-about-services {
		padding-left: 18px !important;
		padding-right: 18px !important;
	}

	#lux-about
		.lux-about-hero__title
		.elementor-heading-title,
	#lux-about
		#lux-about-title {
		font-size: clamp(36px, 11vw, 46px) !important;
	}

	#lux-about
		.lux-about-services__title
		.elementor-heading-title,
	#lux-about
		#lux-about-services-title {
		font-size: clamp(34px, 10vw, 43px) !important;
	}

	#lux-about
		.lux-about-contact__item {
		grid-template-columns:
			42px
			minmax(0, 1fr) !important;
	}

	#lux-about
		.lux-about-contact__icon {
		width: 40px !important;
		height: 40px !important;
	}
}


/*======================================================================
  16 — PHONE LANDSCAPE
======================================================================*/

@media
	(max-width: 900px)
	and (orientation: landscape)
	and (max-height: 600px) {

	#lux-about {
		padding:
			104px
			max(26px, env(safe-area-inset-right))
			70px
			max(26px, env(safe-area-inset-left)) !important;
	}

	#lux-about
		.lux-about-section {
		width: 100% !important;
	}

	#lux-about
		.lux-about-hero__content {
		padding:
			46px
			38px !important;
	}

	#lux-about
		.lux-about-hero__title
		.elementor-heading-title,
	#lux-about
		#lux-about-title {
		font-size: clamp(42px, 6.4vw, 58px) !important;
	}

	#lux-about
		.lux-about-hero__image
		img {
		height: 330px !important;
		min-height: 330px;
	}
}


/*======================================================================
  17 — LIGHT PAGE REVEAL
======================================================================*/

#lux-about.lux-about-reveal-ready
	.lux-about-reveal-item {
	opacity: 0;
	transform: translate3d(0, 20px, 0);

	transition:
		opacity 900ms cubic-bezier(0.22, 1, 0.36, 1),
		transform 900ms cubic-bezier(0.22, 1, 0.36, 1);

	transition-delay:
		var(--lux-about-reveal-delay, 0ms);

	will-change: opacity, transform;
}

#lux-about.lux-about-reveal-ready
	.lux-about-reveal-item.is-revealed {
	opacity: 1;
	transform: translate3d(0, 0, 0);
}


/*======================================================================
  18 — REDUCED MOTION
======================================================================*/

@media (prefers-reduced-motion: reduce) {

	#lux-about.lux-about-reveal-ready
		.lux-about-reveal-item,
	#lux-about.lux-about-reveal-ready
		.lux-about-reveal-item.is-revealed {
		opacity: 1 !important;
		transform: none !important;
		transition: none !important;
		will-change: auto !important;
	}

	#lux-about
		.lux-about-services__button
		.elementor-button,
	#lux-about
		.lux-about-services__button
		.elementor-button-text::after {
		transition: none !important;
	}
}
/*==============================================================
  ABOUT LUXELINE — FINAL TWO REFINEMENTS ONLY
  1. Dark Luxeline page background
  2. Perfect icon centering
==============================================================*/


/*--------------------------------------------------------------
  1. PAGE BACKGROUND ONLY
  Floating ivory sections remain completely unchanged.
--------------------------------------------------------------*/

#lux-about {
	background:
		radial-gradient(
			ellipse 58% 48% at 7% 8%,
			rgba(92, 39, 57, 0.55) 0%,
			rgba(67, 37, 46, 0.28) 42%,
			transparent 76%
		),
		radial-gradient(
			ellipse 48% 42% at 88% 82%,
			rgba(67, 37, 46, 0.22) 0%,
			transparent 72%
		),
		linear-gradient(
			118deg,
			#43252e 0%,
			#25181d 48%,
			#1f171b 100%
		) !important;
}


/*--------------------------------------------------------------
  2. ALL CODE-GENERATED ICONS — EXACT CENTRE
--------------------------------------------------------------*/

#lux-about .lux-about-icon,
#lux-about .lux-about-contact__icon {
	position: relative !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
}


/* Elementor leaves an empty inner container inside our icon containers.
   It must not influence centring of the generated icon. */

#lux-about .lux-about-icon > .e-con-inner,
#lux-about .lux-about-contact__icon > .e-con-inner {
	position: absolute !important;
	inset: 0 !important;
	pointer-events: none !important;
}


/* Centre the CSS-generated SVG/mask itself */

#lux-about .lux-about-icon::before,
#lux-about .lux-about-contact__icon::before {
	position: absolute !important;
	top: 50% !important;
	left: 50% !important;
	right: auto !important;
	bottom: auto !important;

	margin: 0 !important;

	transform: translate(-50%, -50%) !important;
	transform-origin: center center !important;
}