/**
 * Alterna service detail styles — scoped to .elevora-service-detail*
 */

.elevora-service-detail .elementor-heading-title {
	white-space: pre-line;
}

.elevora-service-detail .elementor-widget-text-editor p:last-child {
	margin-bottom: 0;
}

.elevora-service-detail .elementor-widget-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

/* Hero */
.elevora-sd-hero {
	position: relative;
	color: #fff;
	isolation: isolate;
}

.elevora-sd-hero::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 0;
	pointer-events: none;
	background: linear-gradient(90deg, rgba(12, 12, 12, 0.82) 0%, rgba(12, 12, 12, 0.42) 100%);
}

.elevora-sd-hero > .e-con-inner,
.elevora-sd-hero > .elementor-element,
.elevora-sd-hero .elevora-sd-hero__inner {
	position: relative;
	z-index: 1;
}

.elevora-sd-hero__inner {
	min-height: clamp(16rem, 38vh, 23rem);
	justify-content: flex-end;
}

.elevora-sd-hero__crumb,
.elevora-sd-hero__crumb a {
	font-family: var(--elevora-font-sans);
	font-size: 0.72rem;
	font-weight: 600;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, 0.7);
	text-decoration: none;
}

.elevora-sd-hero__crumb a:hover {
	color: #c5a059;
}

.elevora-sd-hero__title .elementor-heading-title {
	font-family: var(--elevora-font-serif) !important;
	font-size: clamp(2.35rem, 1.6rem + 2.4vw, 3.5rem) !important;
	line-height: 1.05 !important;
}

.elevora-sd-hero__sub,
.elevora-sd-hero__sub p {
	color: rgba(255, 255, 255, 0.82);
	max-width: 38rem;
	line-height: 1.65;
}

/* Compact service nav */
.elevora-sd-nav {
	display: flex;
	flex-wrap: nowrap;
	gap: 0.35rem 1.25rem;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	padding-bottom: 0.15rem;
}

.elevora-sd-nav__link {
	flex: 0 0 auto;
	font-family: var(--elevora-font-sans);
	font-size: 0.8125rem;
	font-weight: 600;
	color: #1a1a1a;
	text-decoration: none;
	padding: 0.35rem 0;
	border-bottom: 2px solid transparent;
	white-space: nowrap;
}

.elevora-sd-nav__link:hover {
	color: #c5a059;
}

.elevora-sd-nav__link.is-active {
	color: #c5a059;
	border-bottom-color: #c5a059;
}

.elevora-sd-nav-sec {
	border-bottom: 1px solid var(--elevora-color-border, #e8e4de);
}

/* Attrs */
.elevora-sd-attrs__item {
	min-width: min(100%, 10rem);
}

.elevora-sd-attrs__mark {
	display: inline-block;
	width: 2.35rem;
	height: 2.35rem;
	border: 1px solid #c5a059;
	border-radius: 50%;
}

.elevora-sd-attrs__desc,
.elevora-sd-attrs__desc p {
	color: var(--elevora-color-text-muted);
	font-size: 0.8125rem;
	line-height: 1.5;
	max-width: 16ch;
}

/* Detail */
.elevora-sd-detail__title .elementor-heading-title {
	font-family: var(--elevora-font-serif) !important;
	font-size: clamp(1.85rem, 1.35rem + 1.5vw, 2.5rem) !important;
	line-height: 1.12 !important;
	max-width: 14ch;
}

.elevora-sd-detail__copy,
.elevora-sd-detail__copy p {
	color: var(--elevora-color-text-muted);
	max-width: 34rem;
	line-height: 1.75;
	font-size: 0.96rem;
}

.elevora-sd-detail__feat {
	padding-left: 0.85rem;
	border-left: 2px solid #c5a059;
	min-width: min(100%, 10rem);
}

.elevora-sd-detail__feat-desc,
.elevora-sd-detail__feat-desc p {
	color: var(--elevora-color-text-muted);
	font-size: 0.8125rem;
	line-height: 1.5;
}

.elevora-sd-detail__media img,
.elevora-sd-detail__image img {
	width: 100%;
	aspect-ratio: 4 / 5;
	object-fit: cover;
	display: block;
}

/* Process */
.elevora-sd-process__title .elementor-heading-title {
	font-family: var(--elevora-font-serif) !important;
	font-size: clamp(1.75rem, 1.3rem + 1.4vw, 2.35rem) !important;
	line-height: 1.12 !important;
	max-width: 14ch;
}

.elevora-sd-process__media img,
.elevora-sd-process__image img {
	width: 100%;
	aspect-ratio: 3 / 4;
	object-fit: cover;
	display: block;
}

.elevora-sd-process__step {
	min-width: min(100%, 8rem);
}

/* Why */
.elevora-sd-why__title .elementor-heading-title {
	font-family: var(--elevora-font-serif) !important;
	font-size: clamp(1.75rem, 1.3rem + 1.4vw, 2.35rem) !important;
	line-height: 1.12 !important;
	max-width: 14ch;
}

.elevora-sd-why__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 0.85rem;
	max-width: 28rem;
}

.elevora-sd-why__item {
	position: relative;
	padding-left: 1.5rem;
	font-family: var(--elevora-font-sans);
	font-size: 0.95rem;
	color: rgba(255, 255, 255, 0.85);
	line-height: 1.5;
}

.elevora-sd-why__item::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.45rem;
	width: 0.55rem;
	height: 0.55rem;
	border: 1px solid #c5a059;
	border-radius: 50%;
	background: transparent;
}

/* Final */
.elevora-sd-final__title .elementor-heading-title {
	font-family: var(--elevora-font-serif) !important;
	font-size: clamp(1.6rem, 1.2rem + 1.2vw, 2.1rem) !important;
	line-height: 1.15 !important;
	max-width: 18ch;
}

.elevora-service-detail .elevora-eyebrow-el .elementor-heading-title {
	font-size: 0.72rem !important;
	letter-spacing: 0.14em !important;
	font-weight: 600 !important;
}

@media (prefers-reduced-motion: no-preference) {
	.elevora-sd-detail__media img,
	.elevora-sd-process__media img {
		transition: transform 0.45s ease;
	}

	.elevora-sd-detail__media:hover img,
	.elevora-sd-process__media:hover img {
		transform: scale(1.03);
	}
}

@media (max-width: 1024px) {
	.elevora-sd-detail__text,
	.elevora-sd-detail__media,
	.elevora-sd-process__media,
	.elevora-sd-process__content,
	.elevora-sd-attrs__item,
	.elevora-sd-why > .e-con-inner > .e-con {
		width: 100% !important;
	}

	.elevora-sd-attrs__item {
		width: calc(50% - 0.5rem) !important;
	}

	.elevora-sd-process__step {
		width: calc(50% - 0.5rem) !important;
	}

	.elevora-sd-hero__inner {
		min-height: 0 !important;
		padding-top: 6.5rem !important;
	}
}

@media (max-width: 767px) {
	.elevora-sd-attrs__item,
	.elevora-sd-process__step,
	.elevora-sd-detail__feat {
		width: 100% !important;
	}

	.elevora-sd-final__actions {
		width: 100%;
		flex-direction: column !important;
	}

	.elevora-sd-final__actions .elementor-button,
	.elevora-sd-final__actions .elevora-phone-btn {
		width: 100%;
	}

	.elevora-sd-detail__media img,
	.elevora-sd-process__media img {
		aspect-ratio: 4 / 3;
	}
}
