/**
 * Header — scroll hide/show + fundo azul com blur.
 * O estado base (fixed + fundo) vem do CSS crítico no <head>.
 */

#header.ct-header {
	--fcf-header-ease: cubic-bezier(0.22, 1, 0.36, 1);
	--fcf-header-bg: var(--fcf-blue-900, #051e33);
	will-change: transform;
}

body.fcf-header-active #header.ct-header.fcf-header--ready::before {
	transition:
		opacity 0.22s var(--fcf-header-ease),
		backdrop-filter 0.22s var(--fcf-header-ease),
		-webkit-backdrop-filter 0.22s var(--fcf-header-ease);
}

#header.ct-header.fcf-header--ready.is-bg-locked::before {
	transition: none;
}

/* Páginas sem hero: sem fade no 1.º paint */
body.fcf-header-active:not(.has-fcf-hero-under-header):not(.fcf-header-scroll-ready) #header.ct-header::before {
	transition: none;
}

#header.ct-header.fcf-header--ready [data-column-set] > div {
	align-items: center;
	transition:
		padding 0.3s var(--fcf-header-ease),
		min-height 0.3s var(--fcf-header-ease);
}

#header.ct-header.fcf-header--ready.is-surface-immediate [data-column-set] > div,
#header.ct-header.fcf-header--ready.is-surface-immediate .site-logo-container,
#header.ct-header.fcf-header--ready.is-hiding [data-column-set] > div,
#header.ct-header.fcf-header--ready.is-hiding .site-logo-container {
	transition: none;
}

#header.ct-header.fcf-header--ready.is-hiding [data-column-set] > div {
	padding-top: 0.875rem !important;
	padding-bottom: 0.875rem !important;
	min-height: 0 !important;
}

#header.ct-header.fcf-header--ready.is-hiding .site-logo-container {
	--logo-shrink-height: clamp(40px, 4.5vw, 52px);
	height: clamp(40px, 4.5vw, 52px) !important;
}

#header.ct-header.fcf-header--ready.is-compressed [data-column-set] > div {
	padding-top: 0.875rem !important;
	padding-bottom: 0.875rem !important;
	min-height: 0 !important;
}

#header.ct-header.fcf-header--ready [data-column='middle'] {
	align-self: center;
}

#header.ct-header.fcf-header--ready .site-logo-container {
	transition: height 0.3s var(--fcf-header-ease);
}

#header.ct-header.fcf-header--ready.is-compressed .site-logo-container {
	--logo-shrink-height: clamp(40px, 4.5vw, 52px);
	height: clamp(40px, 4.5vw, 52px) !important;
}

#header.ct-header.fcf-header--ready.is-compressed .ct-header-trigger {
	transform: scale(0.92);
	transform-origin: center;
	transition: transform 0.55s var(--fcf-header-ease);
}

body:not(.fcf-header-gsap) #header.ct-header.fcf-header--ready {
	transition: transform 0.3s var(--fcf-header-ease);
}

body:not(.fcf-header-gsap) #header.ct-header.fcf-header--ready.is-hidden {
	transform: translate3d(0, -100%, 0);
	pointer-events: none;
}

@media (prefers-reduced-motion: reduce) {
	#header.ct-header.fcf-header--ready::before,
	#header.ct-header.fcf-header--ready [data-column-set] > div,
	#header.ct-header.fcf-header--ready .site-logo-container {
		transition: none;
	}

	body:not(.fcf-header-gsap) #header.ct-header.fcf-header--ready {
		transition: none;
	}
}
