/**
 * Homepage hero: both bold lines use dark gray + headline size (matches Elementor 859ea22).
 * Spacing: exactly 50px from header to hero content (image + text/button group).
 * Text + button group stays vertically centered to the hero image.
 */
body.home #site-content.site-content-wrapper,
body.page-id-4937 #site-content.site-content-wrapper {
	padding-top: 0 !important;
	margin-top: 0 !important;
	padding-bottom: 50px !important;
}

body.home .elementor-4937,
body.page-id-4937 .elementor-4937 {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

.elementor-4937 .elementor-element.elementor-element-6e66392 {
	/* Kill Elementor desktop --margin-top:40px (and tablet/mobile variants). */
	--margin-top: 0px !important;
	--margin-block-start: 0px !important;
	margin-top: 0 !important;
	margin-block-start: 0 !important;
	/* Outer stays at 0 — padding lives only on .e-con-inner (avoids double gap). */
	--padding-top: 0px !important;
	--padding-block-start: 0px !important;
	padding-top: 0 !important;
	padding-block-start: 0 !important;
	/* Let the picture define row height (was 745px desktop). */
	--min-height: 0px !important;
	min-height: 0 !important;
	--align-items: stretch !important;
	align-items: stretch !important;
}

/* Single 50px gap above the hero row (image + centered text/button move up together). */
.elementor-4937 .elementor-element.elementor-element-6e66392 > .e-con-inner {
	--padding-top: 50px !important;
	--padding-block-start: 50px !important;
	padding-top: 50px !important;
	padding-block-start: 50px !important;
	margin-top: 0 !important;
	margin-block-start: 0 !important;
	align-items: stretch !important;
}

/* Image column stays top-aligned. */
.elementor-4937 .elementor-element.elementor-element-008fd19 {
	--justify-content: flex-start !important;
	justify-content: flex-start !important;
	--margin-top: 0px !important;
	margin-top: 0 !important;
	--padding-top: 0px !important;
	padding-top: 0 !important;
}

/* Texts + button as one group, vertically centered against the picture. */
.elementor-4937 .elementor-element.elementor-element-c3435f5 {
	--justify-content: center !important;
	justify-content: center !important;
	--margin-top: 0px !important;
	margin-top: 0 !important;
	--padding-top: 0px !important;
	padding-top: 0 !important;
}

/* Text swap synced with image slider (fashion ↔ installment). */
.elementor-4937 .elementor-element.elementor-element-c3435f5 .elementor-heading-title {
	transition: opacity 0.32s ease, transform 0.32s ease;
	will-change: opacity, transform;
}

.elementor-4937 .elementor-element.elementor-element-c3435f5.jaj-hero-text-out .elementor-heading-title {
	opacity: 0;
	transform: translateY(14px);
}

.elementor-4937 .elementor-element.elementor-element-c3435f5.jaj-hero-text-in .elementor-heading-title {
	opacity: 1;
	transform: translateY(0);
}

.elementor-4937 .elementor-element.elementor-element-c263ebc {
	text-align: start;
}

/* Hero CTA: box with 8px radius (not pill). */
.elementor-4937 .elementor-element.elementor-element-9258392 .elementor-button,
.elementor-4937 .elementor-element.elementor-element-9258392 .kitify-btn,
.elementor-4937 .elementor-element.elementor-element-9258392 a {
	border-radius: 8px !important;
}

.elementor-4937 .elementor-element.elementor-element-c263ebc .elementor-heading-title,
.elementor-4937 .elementor-element.elementor-element-859ea22 .elementor-heading-title {
	color: #555555 !important;
	font-size: 40px !important;
	font-weight: 700 !important;
	line-height: 48px !important;
}

/* Bottom subtitle centered for both text slides. */
.elementor-4937 .elementor-element.elementor-element-b28893c,
.elementor-4937 .elementor-element.elementor-element-b28893c .elementor-heading-title {
	text-align: center !important;
}

@media (max-width: 1279px) {
	.elementor-4937 .elementor-element.elementor-element-c263ebc .elementor-heading-title,
	.elementor-4937 .elementor-element.elementor-element-859ea22 .elementor-heading-title {
		font-size: 40px !important;
		line-height: 48px !important;
	}
}

/* Stacked layout: text sits under the image, no side-by-side centering. */
@media (max-width: 991px) {
	.elementor-4937 .elementor-element.elementor-element-c3435f5 {
		--justify-content: flex-start !important;
		justify-content: flex-start !important;
	}
}

@media (max-width: 767px) {
	.elementor-4937 .elementor-element.elementor-element-c263ebc .elementor-heading-title,
	.elementor-4937 .elementor-element.elementor-element-859ea22 .elementor-heading-title {
		font-size: 32px !important;
		line-height: 40px !important;
	}

	/*
	 * Mobile only: hold room for wrapped lines across both text slides,
	 * and drop the button so wrap/swap does not shove it around.
	 */
	.elementor-4937 .elementor-element.elementor-element-859ea22 {
		min-height: 80px;
		width: 100% !important;
		max-width: 100% !important;
	}

	.elementor-4937 .elementor-element.elementor-element-b28893c {
		min-height: 48px;
		width: 100% !important;
	}

	.elementor-4937 .elementor-element.elementor-element-12291d1 {
		--spacer-size: 56px !important;
	}

	.elementor-4937 .elementor-element.elementor-element-12291d1 .elementor-spacer-inner {
		height: 56px !important;
	}

	.elementor-4937 .elementor-element.elementor-element-9258392 {
		margin-top: 8px !important;
	}
}
