/* =========================================================
   Секція: текст і фото у дві колонки
   Макет «Unsere Praxis» → Räume
   ========================================================= */

.phm-text-media {
	padding-block: 140px;
}

.phm-text-media--beige { background: var(--phm-beige); }
.phm-text-media--white { background: var(--phm-white); }

.phm-text-media__inner {
	display: grid;
	grid-template-columns: minmax(0, 1fr) var(--phm-text-media-width, 460px);
	gap: 96px;
	align-items: start;
}

/* Фото ліворуч — міняємо колонки місцями, порядок у розмітці лишається
   природним для читання з екрана. */
.phm-text-media--media-left .phm-text-media__inner {
	grid-template-columns: var(--phm-text-media-width, 460px) minmax(0, 1fr);
}

.phm-text-media--media-left .phm-text-media__text  { grid-column: 2; grid-row: 1; }
.phm-text-media--media-left .phm-text-media__media { grid-column: 1; grid-row: 1; }

.phm-text-media--no-media .phm-text-media__inner {
	grid-template-columns: minmax(0, 1fr);
}

.phm-text-media__text {
	/* Оптичне вирівнювання з макета: текст трохи нижче верху кадру. */
	padding-top: 24px;
}

.phm-text-media__title {
	margin: 0;
}

.phm-eyebrow + .phm-text-media__title {
	margin-top: 20px;
}

.phm-text-media__p {
	margin: 32px 0 0;
	max-width: var(--phm-measure);
}

.phm-text-media__p + .phm-text-media__p {
	margin-top: 24px;
}

.phm-text-media__action {
	margin-top: 40px;
}

/* Зсув униз відносно тексту — як у макеті. Padding, а не margin: Elementor
   обнуляє margin у <figure> всередині віджета правилом
   `.elementor .elementor-widget:not(…) figure { margin: 0 }` вагою (0,4,1). */
.phm-text-media__media {
	margin: 0;
	padding-top: var(--phm-text-media-offset, 72px);
}

.phm-text-media__frame {
	display: block;
	border-radius: var(--phm-radius);
	overflow: hidden;
	background: var(--phm-shell);
	box-shadow: var(--phm-shadow-card);
}

.phm-text-media__img {
	display: block;
	width: 100%;
	height: 100%;
	aspect-ratio: var(--phm-text-media-ratio, 460 / 580);
	object-fit: cover;
}

/* ---- Адаптив ---- */

@media (max-width: 1024px) {
	.phm-text-media {
		padding-block: 88px;
	}

	.phm-text-media__inner {
		gap: 48px;
		grid-template-columns: minmax(0, 1fr) minmax(0, 0.8fr);
	}

	.phm-text-media--media-left .phm-text-media__inner {
		grid-template-columns: minmax(0, 0.8fr) minmax(0, 1fr);
	}
}

@media (max-width: 767px) {
	.phm-text-media {
		padding-block: 56px;
	}

	/* Одна колонка: фото завжди після тексту, з якого б боку воно
	   не стояло на десктопі. */
	.phm-text-media__inner,
	.phm-text-media--media-left .phm-text-media__inner {
		grid-template-columns: minmax(0, 1fr);
		gap: 32px;
	}

	.phm-text-media--media-left .phm-text-media__text,
	.phm-text-media--media-left .phm-text-media__media {
		grid-column: 1;
		grid-row: auto;
	}

	.phm-text-media__text {
		padding-top: 0;
	}

	.phm-text-media__p {
		margin-top: 24px;
	}

	.phm-text-media__media {
		padding-top: 0;
	}

	.phm-text-media__img {
		aspect-ratio: var(--phm-text-media-ratio-mobile, 4 / 5);
	}
}
