/* NL Toolkit: efectos del header. Medidas en rem salvo bordes y desenfoque. */
#nlt-header.nlt-fx {
	--nlt-fx-dur: .4s;
	--nlt-fx-ease: cubic-bezier(.16, 1, .3, 1);
	--nlt-fx-top: var(--wp-admin--admin-bar--height, 0px);
	z-index: 100;
	transition:
		transform var(--nlt-fx-dur) var(--nlt-fx-ease),
		background-color var(--nlt-fx-dur) ease,
		box-shadow var(--nlt-fx-dur) ease,
		-webkit-backdrop-filter var(--nlt-fx-dur) ease,
		backdrop-filter var(--nlt-fx-dur) ease;
}

/* Posición */
#nlt-header.nlt-fx-sticky { position: sticky; top: var(--nlt-fx-top); }
#nlt-header.nlt-fx-overlay { position: fixed; top: var(--nlt-fx-top); left: 0; right: 0; }

/* Raíz del contenido de Elementor dentro del header */
#nlt-header.nlt-fx > .elementor > .e-con,
#nlt-header.nlt-fx > .elementor > .elementor-section {
	transition: background-color var(--nlt-fx-dur) ease, border-color var(--nlt-fx-dur) ease, min-height var(--nlt-fx-dur) var(--nlt-fx-ease), padding var(--nlt-fx-dur) var(--nlt-fx-ease);
}

/* Transparente arriba del todo (superpuesto) */
#nlt-header.nlt-fx-transparent:not(.nlt-is-scrolled) > .elementor > .e-con,
#nlt-header.nlt-fx-transparent:not(.nlt-is-scrolled) > .elementor > .elementor-section {
	background-color: transparent !important;
	background-image: none !important;
	border-color: transparent !important;
}

/* Fondo con desenfoque al hacer scroll */
#nlt-header.nlt-fx-bg.nlt-is-scrolled {
	background-color: var(--nlt-fx-bg);
	-webkit-backdrop-filter: blur(var(--nlt-fx-blur)) saturate(140%);
	backdrop-filter: blur(var(--nlt-fx-blur)) saturate(140%);
	box-shadow: 0 1px 0 rgba(255, 255, 255, .06), 0 .75rem 2rem -1.5rem rgba(0, 0, 0, .5);
}
#nlt-header.nlt-fx-bg.nlt-is-scrolled > .elementor > .e-con,
#nlt-header.nlt-fx-bg.nlt-is-scrolled > .elementor > .elementor-section {
	background-color: transparent !important;
	background-image: none !important;
}

/* Encoger */
#nlt-header.nlt-fx-shrink.nlt-is-scrolled > .elementor > .e-con,
#nlt-header.nlt-fx-shrink.nlt-is-scrolled > .elementor > .elementor-section {
	min-height: var(--nlt-fx-shrink-h) !important;
	--min-height: var(--nlt-fx-shrink-h);
	padding-top: .25rem !important;
	padding-bottom: .25rem !important;
}

/* Ocultar al bajar (nunca con el foco dentro) */
#nlt-header.nlt-fx-hide.nlt-is-hidden { transform: translateY(calc(-100% - var(--nlt-fx-top))); }
#nlt-header.nlt-fx-hide.nlt-is-hidden:focus-within { transform: none; }

/* Solo en escritorio */
@media (max-width: 767px) {
	#nlt-header.nlt-fx-desktop-only {
		position: relative !important;
		transform: none !important;
		background-color: transparent !important;
		-webkit-backdrop-filter: none !important;
		backdrop-filter: none !important;
		box-shadow: none !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	#nlt-header.nlt-fx,
	#nlt-header.nlt-fx > .elementor > .e-con,
	#nlt-header.nlt-fx > .elementor > .elementor-section { transition: none; }
}
