/**
 * EVO-MOBILE-EDGE-FIX — mobile-only full-bleed / no right gutter (≤1100px).
 */

@media (max-width: 1100px) {
	/* Stop page-wide horizontal scroll from decorative bleeds */
	html,
	body {
		overflow-x: clip;
		max-width: 100%;
	}

	#page,
	.site,
	.elementor {
		max-width: 100%;
		overflow-x: clip;
	}

	.e-con.e-parent,
	.e-con.e-parent > .e-con-inner {
		max-width: 100% !important;
		box-sizing: border-box;
	}

	/* —— Hero — full viewport width —— */
	.evo-hero-container,
	.evo-hero-container > .e-con-inner,
	.elementor-widget-evoport-hero,
	.elementor-widget-evoport-hero > .elementor-widget-container,
	.elementor-widget-evoport-split-hero,
	.elementor-widget-evoport-split-hero > .elementor-widget-container,
	.evo-hero,
	.evo-hero__inner,
	.evo-split-hero,
	.evo-split-hero__inner {
		width: 100% !important;
		max-width: 100% !important;
		box-sizing: border-box;
	}

	.elementor-widget-evoport-contact-page,
	.elementor-widget-evoport-contact-page > .elementor-widget-container,
	.elementor-widget-evoport-contact-page .evo-contact-page,
	.elementor-widget-evoport-contact-page .evo-contact-page__hero {
		width: 100% !important;
		max-width: 100% !important;
		margin-inline: 0 !important;
		padding-inline: 0 !important;
		box-sizing: border-box;
	}

	.elementor-widget-evoport-contact-page,
	.elementor-widget-evoport-contact-page > .elementor-widget-container {
		background: transparent !important;
	}

	.evo-hero-container {
		overflow-x: clip !important;
	}

	.evo-hero-container > .e-con-inner {
		overflow-x: clip !important;
	}

	.evo-hero {
		--evo-hero-copy-max: 100%;
		--evo-hero-pad-x: 0;
	}

	.evo-hero__copy {
		max-width: 100% !important;
		width: 100% !important;
		padding-inline: 16px;
		box-sizing: border-box;
	}

	.evo-hero__sub,
	.evo-hero p.evo-hero__sub {
		max-width: 39% !important;
	}

	.evo-hero__actions {
		max-width: 100% !important;
		width: 100% !important;
		padding-inline: 16px;
		box-sizing: border-box;
	}

	.evo-hero__deck {
		max-width: 100% !important;
		width: 100% !important;
		padding-inline: 16px;
		box-sizing: border-box;
	}

	.evo-hero__deck-left .evo-hero__panel-img {
		max-width: 100% !important;
	}

	/* —— Footer — full width; clip moss scene bleed —— */
	body .e-con.e-parent:has(.elementor-widget-evoport-footer) {
		--container-default-padding-left: 0px !important;
		--container-default-padding-right: 0px !important;
		--padding-left: 0px !important;
		--padding-right: 0px !important;
		padding-inline: 0 !important;
		max-width: 100% !important;
		overflow-x: clip !important;
	}

	body .e-con.e-parent:has(.elementor-widget-evoport-footer) > .e-con-inner {
		max-width: 100% !important;
		overflow-x: clip !important;
	}

	.e-con:has(.evo-footer--has-scene),
	.e-con:has(.evo-footer--has-scene) > .e-con-inner,
	.e-con:has(.evo-footer--has-branch),
	.e-con:has(.evo-footer--has-branch) > .e-con-inner,
	:is(.elementor-widget-evoport-footer, #evo-global-footer),
	:is(.elementor-widget-evoport-footer, #evo-global-footer) > .elementor-widget-container,
	:is(.elementor-widget-evoport-footer, #evo-global-footer):has(.evo-footer--has-scene),
	:is(.elementor-widget-evoport-footer, #evo-global-footer):has(.evo-footer--has-branch),
	:is(.elementor-widget-evoport-footer, #evo-global-footer):has(.evo-footer--has-scene) > .elementor-widget-container,
	:is(.elementor-widget-evoport-footer, #evo-global-footer):has(.evo-footer--has-branch) > .elementor-widget-container {
		overflow-x: clip !important;
		max-width: 100% !important;
		width: 100% !important;
		box-sizing: border-box;
	}

	:is(.elementor-widget-evoport-footer, #evo-global-footer) .evo-footer {
		--evo-footer-scene-w: 100% !important;
		--evo-footer-deco-right-bleed: 0 !important;
		width: 100% !important;
		max-width: 100% !important;
		overflow-x: clip !important;
	}

	:is(.elementor-widget-evoport-footer, #evo-global-footer) .evo-footer__stage,
	:is(.elementor-widget-evoport-footer, #evo-global-footer) .evo-footer__shell {
		width: 100% !important;
		max-width: 100% !important;
		box-sizing: border-box;
	}

	:is(.elementor-widget-evoport-footer, #evo-global-footer) .evo-footer__scene-wrap {
		left: 0 !important;
		right: 0 !important;
		width: 100% !important;
		max-width: 100% !important;
	}

	.elementor-widget-evoport-footer .evo-footer__nav,
	.elementor-widget-evoport-footer .evo-footer__brand,
	.elementor-widget-evoport-footer .evo-footer__logo-row {
		width: 100% !important;
		max-width: 100% !important;
		box-sizing: border-box;
	}
}

@media (max-width: 700px) {
	.evo-split-hero__grid {
		display: flex !important;
		flex-direction: column !important;
		align-items: stretch !important;
		grid-template-columns: none !important;
		width: 100% !important;
		max-width: 100% !important;
	}

	.evo-split-hero__copy {
		order: 1 !important;
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		padding-inline: 16px;
		box-sizing: border-box;
	}

	.evo-split-hero__media {
		order: 2 !important;
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
	}

	.evo-split-hero__title,
	.evo-split-hero h1.evo-split-hero__title,
	.evo-split-hero__sub,
	.evo-split-hero p.evo-split-hero__sub {
		max-width: 100% !important;
		width: 100% !important;
	}
}

@media (max-width: 700px) {
	/* About hero — full bleed, no boxed gutter */
	.elementor-widget-evoport-about-hero,
	.elementor-widget-evoport-about-hero > .elementor-widget-container,
	.evo-hero-container:has(.elementor-widget-evoport-about-hero),
	.evo-hero-container:has(.elementor-widget-evoport-about-hero) > .e-con-inner {
		width: 100% !important;
		max-width: 100% !important;
		margin-inline: 0 !important;
		padding-inline: 0 !important;
		box-sizing: border-box;
	}

	.evo-hero-container:has(.elementor-widget-evoport-about-hero) {
		overflow: visible !important;
		min-height: 0 !important;
		height: auto !important;
	}

	/* Scroll / failure band — full bleed white + dark panels */
	.elementor-widget-evo-scroll-section,
	.elementor-widget-evo-scroll-section > .elementor-widget-container,
	.elementor-widget-evoport-about-failure-band,
	.elementor-widget-evoport-about-failure-band > .elementor-widget-container,
	.evo-scroll-section,
	.evo-scroll-section__pin,
	.evo-scroll-section__rail,
	.evo-scroll-section__stage {
		width: 100% !important;
		max-width: 100% !important;
		margin-inline: 0 !important;
		padding-inline: 0 !important;
		box-sizing: border-box;
	}

	body.evo-global-hf-on .e-con.e-parent:has(.elementor-widget-evo-scroll-section),
	body.evo-global-hf-on .e-con.e-parent:has(.elementor-widget-evoport-about-failure-band),
	body.evo-global-hf-on .evo-about-page > .e-con-inner > .e-con.e-parent:has(.elementor-widget-evo-scroll-section),
	body.evo-global-hf-on .evo-about-page > .e-con-inner > .e-con.e-parent:has(.elementor-widget-evoport-about-failure-band) {
		--content-width: 100% !important;
		--container-max-width: none !important;
		--container-default-padding-left: 0px !important;
		--container-default-padding-right: 0px !important;
		--padding-left: 0px !important;
		--padding-right: 0px !important;
		padding-inline: 0 !important;
		margin-inline: 0 !important;
		width: 100% !important;
		max-width: none !important;
	}

	body.evo-global-hf-on .e-con.e-parent:has(.elementor-widget-evo-scroll-section) > .e-con-inner,
	body.evo-global-hf-on .e-con.e-parent:has(.elementor-widget-evoport-about-failure-band) > .e-con-inner,
	body.evo-global-hf-on .evo-about-page > .e-con-inner > .e-con.e-parent:has(.elementor-widget-evo-scroll-section) > .e-con-inner,
	body.evo-global-hf-on .evo-about-page > .e-con-inner > .e-con.e-parent:has(.elementor-widget-evoport-about-failure-band) > .e-con-inner {
		padding-inline: 0 !important;
		margin-inline: 0 !important;
		width: 100% !important;
		max-width: none !important;
	}
}
