/**
 * Global mobile responsiveness — prevents horizontal overflow / right-side gap.
 */

@media (max-width: 1024px) {
	html {
		overflow-x: hidden;
		max-width: 100%;
	}

	body {
		overflow-x: hidden;
		max-width: 100%;
		width: 100%;
	}

	.wp-site-blocks,
	header,
	main,
	footer,
	.ds-header,
	.ds-footer,
	.ds-topbar,
	.ds-blank-landing,
	.ds-blank-content,
	.ds-home-page,
	.ds-home-content,
	.ds-industry-page {
		max-width: 100% !important;
		width: 100% !important;
		box-sizing: border-box;
	}

	/* WP constrained layout must not exceed viewport */
	.is-layout-constrained,
	.is-layout-flow,
	.wp-block-group.is-layout-constrained {
		max-width: 100% !important;
	}

	.alignfull.ds-header,
	.alignfull.ds-footer,
	.alignfull.ds-topbar,
	.alignfull.ds-blank-landing {
		margin-inline: 0 !important;
		padding-inline: clamp(0.75rem, 3vw, 1rem) !important;
	}

	.ds-container,
	.ds-header-inner {
		width: 100%;
		max-width: 100%;
		min-width: 0;
		box-sizing: border-box;
	}

	/* Softlance / DataScan blocks — stay within viewport */
	[class*="wp-block-softlance"] {
		max-width: 100% !important;
		width: 100% !important;
		min-width: 0 !important;
		box-sizing: border-box;
	}

	/* Constrain block containers only — not nested icons/badges/pills, which
	   need their own fixed dimensions (matched via "datascan-" substring too). */
	[class*="datascan-"] {
		max-width: 100% !important;
		min-width: 0 !important;
		box-sizing: border-box;
	}

	[class*="datascan-"] img,
	[class*="datascan-"] video,
	.datascan-ib-bg-img,
	.datascan-feature-image,
	.card-image,
	.datascan-kb-image {
		max-width: 100% !important;
		height: auto;
	}

	.datascan-kb-inner {
		grid-template-columns: 1fr !important;
		max-width: 100% !important;
	}

	.datascan-pt-wrap,
	.datascan-ic-container,
	.datascan-feature-container,
	.datascan-tl-wrap,
	.datascan-kb-inner {
		padding-inline: 20px;
		max-width: 100% !important;
	}

	/* Tab strip scrolls inside its box — does not widen the page */
	.datascan-product-tabs {
		overflow-x: hidden;
	}

	.datascan-pt-tabs {
		max-width: 100%;
	}

	.datascan-pt-carousel,
	.datascan-pt-track {
		max-width: 100%;
	}

	.datascan-tl-carousel-row {
		max-width: 100%;
		overflow: visible;
	}
}

/* Trusted Logos — see assets/css/trusted-logos-fix.css (loads last) */
