/**
 * Cross-page responsive safeguards. Structural spacing remains in Elementor.
 */
html,
body {
	max-width: 100%;
	overflow-x: clip;
}

@supports not (overflow: clip) {
	html,
	body {
		overflow-x: hidden;
	}
}

img,
svg,
video,
canvas,
iframe,
input,
select,
textarea {
	max-width: 100%;
}

/* The funding hero used slow entrance animations on its image and main copy,
 * leaving an apparently empty screen for almost two seconds. Keep its first
 * paint complete on every device. */
.page-id-4566148 :is(
	[data-id="b2db5d5"],
	[data-id="25d5d4c1"],
	[data-id="40da2f46"]
) {
	visibility: visible !important;
	opacity: 1 !important;
	animation: none !important;
	transform: none !important;
}

@media (max-width: 360px) {
	body:not(.single-post) .elementor-widget-heading h1.elementor-heading-title,
	.nvm-dua-local-centre h1 {
		font-size: clamp(32px, 9.25vw, 36px) !important;
		line-height: 1.12 !important;
		overflow-wrap: anywhere;
	}

	footer .elementor-element-53b98a72,
	footer .elementor-element-d356d70 {
		flex: 0 0 100% !important;
		width: 100% !important;
		max-width: 100% !important;
		margin-top: 20px !important;
	}
}

/* Keep local landing-page hero photography visible behind mobile copy. */
@media (max-width: 767px) {
	.nvm-dua-local-centre .dua-local-hero__media {
		object-position: 50% 50% !important;
	}

	.nvm-dua-local-centre .dua-local-hero__shade {
		background: linear-gradient(180deg, rgba(23, 32, 68, .76) 0%, rgba(23, 32, 68, .84) 100%) !important;
	}
}
