/**
 * EVO fluid guards — 300px to fullscreen.
 * Overflow + text-wrap + flex min-width only. Does NOT change widget mobile ≤1020 or desktop ≥1440 design.
 */

/* —— 300px+: universal anti-break (all breakpoints) —— */
@media (min-width: 300px) {
	html,
	body {
		overflow-x: clip;
		max-width: 100%;
	}

	#page,
	.site,
	.elementor {
		max-width: 100%;
		min-width: 0;
		box-sizing: border-box;
	}

	.e-con,
	.e-con-inner,
	.elementor-widget-container {
		min-width: 0;
		max-width: 100%;
		box-sizing: border-box;
	}

	.elementor-widget-evoport-hero,
	.elementor-widget-evoport-split-hero,
	.elementor-widget-evoport-tri-cards,
	.elementor-widget-evoport-gtm-compare,
	.elementor-widget-evoport-expert-steps,
	.elementor-widget-evoport-gtm-flow,
	.elementor-widget-evoport-faq,
	.elementor-widget-evoport-gif,
	.elementor-widget-evo-latest-blogs,
	.elementor-widget-evoport-footer,
	.elementor-widget-evoport-header {
		max-width: 100%;
		min-width: 0;
		box-sizing: border-box;
	}

	[class*="evo-"] {
		overflow-wrap: break-word;
		word-wrap: break-word;
	}

	.evo-hero__title,
	.evo-hero__sub,
	.evo-split-hero__title,
	.evo-split-hero__sub {
		overflow-wrap: normal;
		word-break: normal;
	}

	[class*="evo-"] img:not(.evo-trusted-logos__logo-img):not(.evo-hero__panel-img),
	[class*="evo-"] svg,
	[class*="evo-"] video {
		max-width: 100%;
		height: auto;
	}

	/* Lottie + menu icons need fixed box — height:auto blows up 1920×1080 SVGs */
	.evo-tri-cards__lottie svg {
		height: 100% !important;
		max-height: 100% !important;
	}

	.evo-header__panel-icon--plugin img,
	.evo-header__panel-icon--plugin svg,
	.evo-header__panel-icon--plugin i._mi,
	.evo-header__panel-icon--plugin img._mi,
	.evo-header__panel-icon--plugin svg._mi {
		width: 24px !important;
		height: 24px !important;
		max-width: 24px !important;
		max-height: 24px !important;
	}

	.evo-blog-card__corner-arrow svg {
		width: 32px !important;
		height: 32px !important;
		max-width: 32px !important;
		max-height: 32px !important;
	}

	.evo-gtm-flow__card-arrow svg,
	.evo-gtm-flow__card-arrow img {
		width: 32px !important;
		height: 32px !important;
		max-width: 32px !important;
		max-height: 32px !important;
	}

	.evo-blogs__nav .slick-arrow svg,
	.evo-blogs__nav-btn svg {
		width: 32px !important;
		height: 32px !important;
		max-width: 32px !important;
		max-height: 32px !important;
	}

	.evo-trusted-logos__logo-img,
	.evo-trusted-logos img.evo-trusted-logos__logo-img {
		width: auto !important;
		max-width: none !important;
		height: var(--evo-trusted-logos-logo-h, 64px) !important;
		min-height: var(--evo-trusted-logos-logo-h, 64px) !important;
		max-height: var(--evo-trusted-logos-logo-h, 64px) !important;
	}
}

/* —— 300–700px: ultra-narrow squeeze (padding/gap only — widget mobile type/layout) —— */
@media (min-width: 300px) and (max-width: 700px) {
	.evo-hero__title,
	.evo-split-hero__title,
	.evo-hero h1,
	.evo-split-hero h1 {
		max-width: 100% !important;
		word-break: normal !important;
		overflow-wrap: normal !important;
	}

	.evo-hero__sub,
	.evo-hero p.evo-hero__sub,
	.evo-split-hero__sub,
	.evo-split-hero p.evo-split-hero__sub {
		max-width: 41% !important;
		word-break: normal !important;
		overflow-wrap: normal !important;
	}

	.evo-hero__actions {
		gap: clamp(4px, 1.5vw, 8px) !important;
		padding-inline: clamp(12px, 4vw, 16px) !important;
	}

	.evo-hero .evo-btn,
	.evo-hero .evo-glass-btn {
		--evo-btn-pad-x: clamp(10px, 3.5vw, 24px) !important;
		--evo-glass-btn-pad-x: clamp(10px, 3.5vw, 24px) !important;
		min-width: 0 !important;
		flex: 1 1 0 !important;
		max-width: calc(50% - 2px) !important;
	}

	.evo-split-hero__actions {
		padding-inline: clamp(12px, 4vw, 16px) !important;
	}

	.evo-split-hero .evo-btn,
	.evo-split-hero .evo-glass-btn {
		min-width: 0 !important;
		max-width: 100% !important;
	}

	.evo-tri-cards__card,
	.evo-tri-cards__card-copy,
	.evo-tri-cards__title,
	.evo-tri-cards__desc {
		max-width: 100% !important;
		min-width: 0 !important;
	}

	.evo-gtm-compare__title,
	.evo-gtm-compare__subtitle,
	.evo-expert-steps__title,
	.evo-expert-steps__intro,
	.evo-gtm-flow__title,
	.evo-faq__title,
	.evo-faq__item-question,
	.evo-gif-banner__title {
		max-width: 100% !important;
	}
}

/* —— 1101px+: desktop overflow guard (mobile-edge-fix covers ≤1020) —— */
@media (min-width: 1101px) {
	.e-con.e-parent {
		max-width: 100%;
		overflow-x: clip;
		box-sizing: border-box;
	}

	.elementor-widget-evoport-footer .evo-footer,
	.elementor-widget-evoport-footer .evo-footer__stage {
		max-width: 100%;
		overflow-x: clip;
	}

	[class*="evo-"] h1,
	[class*="evo-"] h2,
	[class*="evo-"] h3,
	[class*="evo-"] p {
		overflow-wrap: break-word;
	}
}

@media (max-width: 450px) {
	.evo-hero__sub,
	.evo-hero p.evo-hero__sub,
	.evo-split-hero__sub,
	.evo-split-hero p.evo-split-hero__sub {
		max-width: 76% !important;
		word-break: normal !important;
		overflow-wrap: normal !important;
	}
}
