/**
 * Homepage hero ≤767px: vídeo (ou poster) + H1 + parágrafo completo + dois CTAs + Continuar.
 * Só body.home / is_front_page. Não aplica a /a-urbiagua/ nem à cascata (A4).
 * Desktop ≥768px: sem regras (parágrafo da home intacto).
 */

@media (max-width: 767px) {
	body.home .elementor-element-fb1833b {
		position: relative;
		min-height: 100vh;
		min-height: 100svh;
		padding-top: 60px !important;
		padding-bottom: 12px !important;
		overflow: hidden;
	}

	/* Elementor esconde o vídeo no mobile (elementor-hidden-mobile). */
	body.home .elementor-element-fb1833b > .elementor-background-video-container,
	body.home .elementor-element-fb1833b > .e-con-inner > .elementor-background-video-container,
	body.home .elementor-element-fb1833b .elementor-background-video-container.elementor-hidden-mobile {
		display: block !important;
		visibility: visible !important;
		opacity: 1 !important;
		position: absolute;
		inset: 0;
		width: 100%;
		height: 100% !important;
		overflow: hidden;
		pointer-events: none;
		z-index: 0;
	}

	body.home .elementor-element-fb1833b .elementor-background-video-hosted,
	body.home .elementor-element-fb1833b > .elementor-background-video-container video,
	body.home .elementor-element-fb1833b .elementor-background-video-embed,
	body.home .elementor-element-fb1833b .elementor-background-video-embed iframe {
		display: block !important;
		visibility: visible !important;
		position: absolute;
		top: 50%;
		left: 50%;
		width: 100%;
		height: 100%;
		min-width: 100%;
		min-height: 100%;
		transform: translate(-50%, -50%);
		object-fit: cover;
		object-position: center center;
		pointer-events: none;
	}

	/* static: o vídeo (absolute) ancora no hero, não na caixa com padding. */
	body.home .elementor-element-fb1833b > .e-con-inner {
		position: static;
		flex: 1 1 auto;
		flex-direction: column;
		justify-content: flex-end;
		align-items: stretch;
		min-height: 0;
		height: 100%;
	}

	body.home .elementor-element-03b714b {
		width: 100% !important;
		max-width: 100%;
		flex: 0 0 auto;
		position: relative;
		z-index: 3;
	}

	/* H1 visível — não se esconde para «abrir espaço». */
	body.home .elementor-element-a9f4b8a,
	body.home .elementor-element-a9f4b8a .elementor-heading-title {
		display: block !important;
		visibility: visible !important;
		opacity: 1 !important;
	}

	body.home .elementor-element-a9f4b8a .elementor-heading-title {
		font-size: clamp(1.5rem, 6.6vw, 2rem) !important;
		line-height: 1.15 !important;
		margin-bottom: 6px !important;
	}

	body.home .elementor-element-97f9127 {
		flex: 0 0 auto;
		margin-bottom: 10px !important;
		max-width: 42rem;
		max-height: none !important;
		overflow: visible !important;
	}

	body.home .elementor-element-97f9127 .elementor-widget-container,
	body.home .elementor-element-97f9127 p {
		display: block !important;
		-webkit-box-orient: unset;
		-webkit-line-clamp: unset !important;
		line-clamp: unset !important;
		max-height: none !important;
		height: auto !important;
		text-overflow: clip !important;
		white-space: normal !important;
		overflow: visible !important;
	}

	body.home .elementor-element-97f9127 p {
		font-size: max(15px, 0.95rem) !important;
		line-height: 1.4 !important;
		margin: 0 !important;
	}

	body.home .elementor-element-fb1833b .elementor-invisible,
	body.home .elementor-element-94aa7d7 {
		visibility: visible !important;
		opacity: 1 !important;
		transform: none !important;
		animation: none !important;
	}

	body.home .elementor-element-94aa7d7 {
		display: flex !important;
		flex-direction: column;
		flex-wrap: nowrap;
		align-items: stretch;
		justify-content: flex-end;
		gap: 8px;
		width: 100%;
		margin-top: 2px !important;
		position: relative;
		z-index: 4;
		pointer-events: auto;
		flex: 0 0 auto;
	}

	html[dir="rtl"] body.home .elementor-element-94aa7d7 {
		flex-direction: column;
	}

	body.home .elementor-element-94aa7d7.e-con,
	body.home .elementor-element-94aa7d7 > .e-con-inner {
		display: flex !important;
		flex-direction: column;
		align-items: stretch;
		gap: 8px;
		width: 100%;
	}

	body.home .elementor-element-f501e19,
	body.home .elementor-element-26782a8 {
		width: 100%;
		position: relative;
		z-index: 4;
		pointer-events: auto;
	}

	body.home .elementor-element-f501e19 a.elementor-button,
	body.home .elementor-element-26782a8 a.elementor-button,
	body.home .elementor-element-94aa7d7 a.elementor-button {
		position: relative;
		z-index: 4;
		pointer-events: auto;
		width: 100%;
		justify-content: center;
	}

	body.home .elementor-element-40dfb12 {
		margin-top: 8px !important;
		flex: 0 0 auto;
	}

	/*
	 * Header sticky e banner Complianz não interceptam os CTAs depois do
	 * consentimento. Modal de cookies aberto pode tapar — aceitável.
	 */
	body.home #masthead,
	body.home #ast-mobile-header,
	body.home .ast-mobile-header-wrap,
	body.home .ast-stick-primary-header-wrapper,
	body.home .ast-primary-header-bar {
		pointer-events: none;
	}

	body.home #masthead a,
	body.home #masthead button,
	body.home #masthead .menu-toggle,
	body.home #masthead .ast-button-wrap,
	body.home #ast-mobile-header a,
	body.home #ast-mobile-header button,
	body.home #ast-mobile-header .menu-toggle,
	body.home .ast-mobile-header-wrap a,
	body.home .ast-mobile-header-wrap button {
		pointer-events: auto;
	}

	body.home .cmplz-cookiebanner,
	body.home #cmplz-cookiebanner-container,
	body.home .cmplz-manage-consent,
	body.home #cmplz-manage-consent {
		pointer-events: auto;
		z-index: 100000;
	}
}

@media (max-width: 767px) and (max-height: 700px) {
	body.home .elementor-element-fb1833b {
		padding-top: 52px !important;
		padding-bottom: 8px !important;
	}

	body.home .elementor-element-fb1833b > .e-con-inner {
		min-height: 0;
	}

	body.home .elementor-element-a9f4b8a .elementor-heading-title {
		font-size: clamp(1.35rem, 6vw, 1.7rem) !important;
		margin-bottom: 4px !important;
	}

	body.home .elementor-element-97f9127 {
		margin-bottom: 8px !important;
	}

	body.home .elementor-element-97f9127 p {
		font-size: max(15px, 0.95rem) !important;
		line-height: 1.4 !important;
	}

	body.home .elementor-element-94aa7d7,
	body.home .elementor-element-94aa7d7.e-con,
	body.home .elementor-element-94aa7d7 > .e-con-inner {
		gap: 6px;
	}

	body.home .elementor-element-40dfb12 {
		margin-top: 4px !important;
	}
}
