/**
 * About Page 5050s — stacked 50/50 rows + optional full-height overlay graphic.
 */

.about-page-5050s {
	box-sizing: border-box;
}

/* Overall block spacing */
.about-page-5050s-block {
	padding-top: 5rem;
}

.about-page-5050s__stack {
	position: relative;
	z-index: 0;
}

/* Trail / dotted line — above light-row copy; below dark rows + column images (see z-index). */
.about-page-5050s__overlay-wrap {
	position: absolute;
	inset: 0;
	z-index: 2;
	pointer-events: none;
	display: flex;
	justify-content: center;
	align-items: flex-start;
	overflow: hidden;
}

/* Same max-width as .max-w-content (75rem) so trail aligns with 5050 inner grid */
.about-page-5050s__overlay-img {
	box-sizing: border-box;
	width: 100%;
	max-width: 75rem;
	height: 100%;
	margin-left: auto;
	margin-right: auto;
	object-fit: contain;
	object-position: top center;
	display: block;
	/* Fixed left shift: does not change with viewport width */
	transform: translateX(-10rem);
}

.about-page-5050s__row {
	position: relative;
	/* No z-index here — otherwise the whole row stacks as one layer and images cannot sit above the overlay. */
	box-sizing: border-box;
	overflow: visible;
}

.about-page-5050s__row--light {
	background: #fff;
	color: #111827;
}

/* Dark: solid fallback; with ACF background_image — full-bleed photo only (no gradient overlay). */
.about-page-5050s__row--dark {
	z-index: 3;
	color: #fff;
	background-color: #08081c;
	margin-top: 12rem;
}

.about-page-5050s__row--dark.about-page-5050s__row--has-bg {
	background-image: var(--ap5050-row-bg);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

/* Grid: stack on small screens — text first, media second (same as product 5050) */
.about-page-5050s__grid {
	display: grid;
	grid-template-columns: 1fr;
	align-items: center;
	gap: 2rem;
}

.about-page-5050s__col--text {
	order: 1;
	position: relative;
	z-index: 1;
}

.about-page-5050s__col--media {
	order: 2;
	position: relative;
	z-index: 3;
	background: transparent;
}

@media (min-width: 1024px) {
	.about-page-5050s__grid {
		grid-template-columns: 1fr 1fr;
		gap: 3rem;
	}

	.about-page-5050s__grid--text-left .about-page-5050s__col--text {
		order: 1;
	}

	.about-page-5050s__grid--text-left .about-page-5050s__col--media {
		order: 2;
	}

	.about-page-5050s__grid--text-right .about-page-5050s__col--text {
		order: 2;
	}

	.about-page-5050s__grid--text-right .about-page-5050s__col--media {
		order: 1;
	}
}

.about-page-5050s__headline {
	margin: 0 0 24px 0;
	font-size: 30px;
	line-height: 47px;
	font-weight: 400;
}

.about-page-5050s__row--light .about-page-5050s__headline {
	color: #111827;
}

.about-page-5050s__row--dark .about-page-5050s__headline {
	color: #fff;
}

.about-page-5050s__text {
	margin: 0 0 1.5rem 0;
	font-size: 18px;
	line-height: 160%;
}

.about-page-5050s__row--light .about-page-5050s__text {
	color: #374151;
}

.about-page-5050s__row--dark .about-page-5050s__text {
	color: rgba(255, 255, 255, 0.92);
}

.about-page-5050s__text p {
	margin: 0 0 0.75rem 0;
}

.about-page-5050s__text p:last-child {
	margin-bottom: 0;
}

.about-page-5050s__figure {
	margin: 0;
	background: transparent;
}

.about-page-5050s-block .about-page-5050s__figure,
.about-page-5050s-block .about-page-5050s__img {
	background: transparent !important;
	background-color: transparent !important;
}

.about-page-5050s__img {
	display: block;
	width: auto;
	max-width: 100%;
	height: auto;
	border-radius: 0;
	box-shadow: none;
}

@media (min-width: 1024px) {
	.about-page-5050s__figure {
		display: flex;
		justify-content: center;
		align-items: flex-start;
	}

	.about-page-5050s__img {
		max-height: 350px;
	}
}

@media (min-width: 1180px) {
	.about-page-5050s__img {
		max-height: 450px;
	}
}

/* Dark column image: pull up past section top (desktop), like comp — no shadow */
@media (min-width: 1024px) {
	.about-page-5050s__row--dark .about-page-5050s__figure--oversized {
		margin-top: -8.25rem;
		position: relative;
		z-index: 1;
	}
}

@media (min-width: 1280px) {
	.about-page-5050s__row--dark .about-page-5050s__figure--oversized {
		margin-top: -10.5rem;
	}
}

.about-page-5050s__cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-top: 0.25rem;
	padding: 10px 24px;
	border-radius: 9999px;
	font-size: 16px;
	font-weight: 600;
	line-height: 1.25;
	text-decoration: none !important;
	transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.about-page-5050s__cta--on-light {
	color: #fff;
	background: #111827;
	border: 2px solid #111827;
}

.about-page-5050s__cta--on-light:hover,
.about-page-5050s__cta--on-light:focus {
	background: transparent;
	color: #111827;
}

.about-page-5050s__cta--on-dark {
	color: #111827;
	background: #fff;
	border: 2px solid #fff;
}

.about-page-5050s__cta--on-dark:hover,
.about-page-5050s__cta--on-dark:focus {
	background: transparent;
	color: #fff;
}

.about-page-5050s__placeholder {
	margin: 0;
	font-size: 0.9375rem;
	color: #6b7280;
}

/* Hide trail on smaller breakpoints */
@media (max-width: 1023px) {
	.about-page-5050s__overlay-wrap {
		display: none !important;
	}

	/* Stacked layout tweaks */
	.about-page-5050s-block {
		padding-top: 0;
		max-width: none;
		margin-left: 0;
		margin-right: 0;
	}

	.about-page-5050s__row--light .max-w-content {
		max-width: 700px;
		margin-left: auto;
		margin-right: auto;
	}

	/* Dark rows: full viewport width when stacked (background bleeds edge to edge) */
	.about-page-5050s__row--dark {
		margin-top: 0;
		width: 100vw;
		max-width: 100vw;
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		box-sizing: border-box;
	}

	.about-page-5050s__row--dark .about-page-5050s__figure--oversized {
		margin-top: 0;
	}

	.about-page-5050s__figure {
		display: flex;
		justify-content: center;
		margin-left: auto;
		margin-right: auto;
	}

	.about-page-5050s__img {
		width: auto;
		max-width: 100%;
		height: auto;
		max-height: 400px;
	}
}
