/*
 * Hadof Focus Continuity V28.
 *
 * Keeps immersive entry heroes decisive on small screens and prevents
 * technical sequence labels from collapsing into vertical letter stacks.
 */

/* Decision labels are orientation aids, not display headlines. */
body.hadof-v2-content .hx-catalog-aligned .hx-catalog-decision-grid > :is(article, div) {
	grid-template-columns: 168px minmax(260px, .65fr) minmax(0, 1fr) !important;
}

body.hadof-v2-content .hx-catalog-aligned .hx-catalog-decision-grid > :is(article, div) > span {
	align-self: start;
	font-size: .78rem !important;
	letter-spacing: .08em !important;
	line-height: 1.35 !important;
	overflow-wrap: normal !important;
	white-space: nowrap;
	word-break: keep-all !important;
}

@media (max-width: 900px) {
	body.hadof-v2-content .hx-hub-hero > .hx-hub-hero__grid,
	body.hadof-v2-content .hadof-x3:not(.hadof-x3-home) > .hx-hub-hero .hx-hub-hero__grid {
		grid-template-rows: minmax(clamp(560px, 72svh, 650px), auto);
		min-height: clamp(560px, 72svh, 650px) !important;
	}

	body.hadof-v2-content .hx-hub-hero .hx-hub-hero__copy,
	body.hadof-v2-content .hadof-x3:not(.hadof-x3-home) > .hx-hub-hero .hx-hub-hero__copy {
		padding: clamp(6.75rem, 20svh, 8.5rem) max(24px, 6vw) 3rem !important;
	}

	body.hadof-v2-content .hx-hub-hero .hx-hub-hero__media,
	body.hadof-v2-content .hadof-x3:not(.hadof-x3-home) > .hx-hub-hero .hx-hub-hero__media {
		aspect-ratio: auto !important;
		max-width: 100%;
		min-width: 0 !important;
		width: 100% !important;
	}

	body.hadof-v2-content .hx-hub-hero .hx-hub-hero__copy h1,
	body.hadof-v2-content .hadof-x3:not(.hadof-x3-home) > .hx-hub-hero .hx-hub-hero__copy h1 {
		font-size: clamp(2.35rem, 7vw, 3.35rem) !important;
		line-height: 1 !important;
		max-width: 16ch !important;
	}

	body.hadof-v2-content .hx-catalog-aligned .hx-catalog-decision-grid > :is(article, div) {
		grid-template-columns: 160px minmax(0, 1fr) !important;
	}

	body.hadof-v2-content .hx-catalog-aligned .hx-catalog-decision-grid > :is(article, div) > h3,
	body.hadof-v2-content .hx-catalog-aligned .hx-catalog-decision-grid > :is(article, div) > p {
		grid-column: 2 !important;
	}
}

@media (max-width: 640px) {
	body.hadof-v2-content .hx-hub-hero > .hx-hub-hero__grid,
	body.hadof-v2-content .hadof-x3:not(.hadof-x3-home) > .hx-hub-hero .hx-hub-hero__grid {
		grid-template-rows: minmax(clamp(520px, 68svh, 610px), auto);
		min-height: clamp(520px, 68svh, 610px) !important;
	}

	body.hadof-v2-content .hx-hub-hero .hx-hub-hero__copy,
	body.hadof-v2-content .hadof-x3:not(.hadof-x3-home) > .hx-hub-hero .hx-hub-hero__copy {
		padding: clamp(6.5rem, 18svh, 8rem) max(22px, 5vw) 2.25rem !important;
	}

	body.hadof-v2-content .hx-hub-hero .hx-hub-hero__copy h1,
	body.hadof-v2-content .hadof-x3:not(.hadof-x3-home) > .hx-hub-hero .hx-hub-hero__copy h1 {
		font-size: clamp(2.35rem, 8.2vw, 2.8rem) !important;
		letter-spacing: -.035em;
		line-height: 1.01 !important;
		max-width: 16ch !important;
	}

	body.hadof-v2-content .hx-hub-hero .hx-hub-hero__copy > p:not(.hx-eyebrow) {
		font-size: .96rem;
		line-height: 1.55;
		max-width: 40ch;
	}

	body.hadof-v2-content .hx-team-hub .hx-hub-hero__media.hx-service-portrait img {
		object-position: 50% 28% !important;
	}

	body.hadof-v2-content .hx-service-hub .hx-hub-hero__media.hx-service-portrait img {
		object-position: 50% 28% !important;
	}

	body.hadof-v2-content .hx-catalog-aligned .hx-catalog-decision-grid > :is(article, div) {
		gap: .4rem !important;
		grid-template-columns: minmax(0, 1fr) !important;
	}

	body.hadof-v2-content .hx-catalog-aligned .hx-catalog-decision-grid > :is(article, div) > :is(span, h3, p) {
		grid-column: 1 !important;
		grid-row: auto !important;
	}
}
