/* ============================================================================
   Cruzeiro do Povo — header-cdp.css  v3.9.54
   Estilo GE: hambúrguer + MENU sempre visível, drawer sempre.
   Layout: [☰ MENU] | [LOGO + NOME] | [vazio à direita]
   ============================================================================ */

:root {
	/* v3.9.63 — gradient EXATO do print correto (mais claro/vivo) */
	--cdp-azul-1:    #3D7DE5;   /* azul céu vibrante (centro-topo) */
	--cdp-azul-2:    #1B5FCC;   /* azul royal médio */
	--cdp-azul-3:    #0F3F9E;   /* azul profundo (cantos) */
	--cdp-azul-grad: radial-gradient(ellipse 130% 110% at 50% 30%, #3D7DE5 0%, #1B5FCC 50%, #0F3F9E 100%);
	--cdp-ouro:      #C9A646;
}

/* ============================================================================
   1. HEADER — gradient vertical + textura de listras diagonais (igual print)
   ============================================================================ */
body .site-header {
	background: var(--cdp-azul-grad) !important;
	border-bottom: 2px solid var(--cdp-ouro) !important;
	box-shadow: 0 2px 14px rgba(0, 31, 92, 0.25) !important;
	position: sticky !important;
	top: 0 !important;
	z-index: 100 !important;
	padding: 0 !important;
	margin: 0 !important;
	/* SEM overflow:hidden — quebrava o drawer position:fixed */
}

/* Textura de listras quase imperceptíveis (igual print original) */
body .site-header::before {
	content: '' !important;
	position: absolute !important;
	inset: 0 !important;
	background-image: repeating-linear-gradient(
		135deg,
		rgba(255, 255, 255, 0.012) 0px,
		rgba(255, 255, 255, 0.012) 1px,
		transparent 1px,
		transparent 16px
	) !important;
	pointer-events: none !important;
	z-index: 0 !important;
	clip-path: inset(0) !important;
}

body .site-header > .container {
	max-width: 1320px !important;
	margin: 0 auto !important;
	padding: 10px 24px !important;
	display: flex !important;
	align-items: center !important;
	gap: 18px !important;
	min-height: 60px !important;
	position: relative !important;
	z-index: 1 !important;
	overflow: visible !important;
}

@media (max-width: 600px) {
	body .site-header > .container { padding: 8px 14px !important; gap: 12px !important; }
}

/* ============================================================================
   2. HAMBÚRGUER + MENU (estilo GE — sempre visível)
   ============================================================================ */
body .site-header .cdp-menu-toggle {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	background: transparent !important;
	border: none !important;
	padding: 6px 8px !important;
	cursor: pointer !important;
	color: #fff !important;
	flex-shrink: 0 !important;
	border-radius: 4px !important;
	transition: background 0.18s ease !important;
}

body .site-header .cdp-menu-toggle:hover {
	background: rgba(255, 255, 255, 0.08) !important;
}

body .site-header .cdp-menu-toggle__icon {
	display: inline-flex !important;
	flex-direction: column !important;
	gap: 4px !important;
	width: 22px !important;
	flex-shrink: 0 !important;
}

body .site-header .cdp-menu-toggle__bar {
	display: block !important;
	width: 22px !important;
	height: 2px !important;
	background: #fff !important;
	border-radius: 2px !important;
	transition: transform 0.25s ease, opacity 0.2s ease !important;
}

body .site-header .cdp-menu-toggle__label {
	font-family: "Inter", system-ui !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	letter-spacing: 0.04em !important;
	color: #fff !important;
	text-transform: uppercase !important;
	line-height: 1 !important;
}

@media (max-width: 480px) {
	body .site-header .cdp-menu-toggle__label { display: none !important; }
}

/* X quando aberto */
body .site-header .cdp-menu-toggle.is-active .cdp-menu-toggle__bar:nth-child(1) {
	transform: translateY(6px) rotate(45deg) !important;
}
body .site-header .cdp-menu-toggle.is-active .cdp-menu-toggle__bar:nth-child(2) {
	opacity: 0 !important;
}
body .site-header .cdp-menu-toggle.is-active .cdp-menu-toggle__bar:nth-child(3) {
	transform: translateY(-6px) rotate(-45deg) !important;
}

/* ============================================================================
   3. BRANDING — logo + nome + tagline
   ============================================================================ */
body .site-header .site-branding {
	display: flex !important;
	align-items: center !important;
	flex-shrink: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	min-height: 0 !important;
	min-width: 0 !important;
}

body .site-header .site-branding__link {
	display: flex !important;
	align-items: center !important;
	gap: 10px !important;
	color: #fff !important;
	text-decoration: none !important;
	padding: 0 !important;
	margin: 0 !important;
	font-size: 16px !important;
	font-family: inherit !important;
	letter-spacing: normal !important;
	text-transform: none !important;
	line-height: 1 !important;
}

body .site-header .site-branding__link img,
body .site-header .site-branding__link .custom-logo,
body .site-header .custom-logo {
	width: 40px !important;
	height: 40px !important;
	max-width: 40px !important;
	max-height: 40px !important;
	min-width: 40px !important;
	object-fit: contain !important;
	background: transparent !important;
	border: none !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	margin: 0 !important;
	padding: 0 !important;
	display: block !important;
	flex-shrink: 0 !important;
}

body .site-header .site-branding__text {
	display: flex !important;
	flex-direction: column !important;
	gap: 1px !important;
	line-height: 1 !important;
	min-width: 0 !important;
}

body .site-header .site-branding__name {
	font-family: "Bebas Neue", "Inter Tight", system-ui !important;
	font-size: 20px !important;
	font-weight: 700 !important;
	letter-spacing: 0.04em !important;
	color: #fff !important;
	text-transform: uppercase !important;
	line-height: 1 !important;
	margin: 0 !important;
	padding: 0 !important;
	white-space: nowrap !important;
}

body .site-header .site-branding__tagline {
	font-family: "Inter", system-ui !important;
	font-size: 9px !important;
	font-weight: 500 !important;
	letter-spacing: 0.1em !important;
	color: rgba(255, 255, 255, 0.65) !important;
	text-transform: uppercase !important;
	line-height: 1 !important;
	margin: 2px 0 0 0 !important;
	padding: 0 !important;
	white-space: nowrap !important;
}

@media (max-width: 600px) {
	body .site-header .site-branding__link img,
	body .site-header .site-branding__link .custom-logo,
	body .site-header .custom-logo {
		width: 34px !important;
		height: 34px !important;
		max-width: 34px !important;
		max-height: 34px !important;
		min-width: 34px !important;
	}
	body .site-header .site-branding__name { font-size: 16px !important; }
	body .site-header .site-branding__tagline { display: none !important; }
}

/* ============================================================================
   4. NAV — sempre drawer (estilo GE)
   Por padrão escondido. Aparece ao clicar no hambúrguer.
   ============================================================================ */
body .site-header .cdp-primary-nav {
	position: fixed !important;
	top: 0 !important;
	left: 0 !important;
	bottom: 0 !important;
	width: min(360px, 86vw) !important;
	max-width: 360px !important;
	box-sizing: border-box !important;
	background: var(--cdp-azul-grad) !important;
	border-right: 2px solid var(--cdp-ouro) !important;
	box-shadow: 8px 0 32px rgba(0, 0, 0, 0.3) !important;
	z-index: 1001 !important;
	padding: 64px 0 24px 0 !important;
	margin: 0 !important;
	transform: translateX(-100%) !important;
	transition: transform 0.3s cubic-bezier(0.22, 1, 0.36, 1) !important;
	overflow-y: auto !important;
	overflow-x: hidden !important;
	display: block !important;
	flex-direction: column !important;
	min-height: 0 !important;
	border-radius: 0 !important;
}

body .site-header .cdp-primary-nav.is-open {
	transform: translateX(0) !important;
}

body .site-header .cdp-primary-nav,
body .site-header .cdp-primary-nav *,
body .site-header .cdp-primary-nav *::before,
body .site-header .cdp-primary-nav *::after {
	box-sizing: border-box !important;
}

/* Botão fechar (X) dentro do drawer */
body .site-header .cdp-nav-close {
	position: absolute !important;
	top: 14px !important;
	right: 14px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 36px !important;
	height: 36px !important;
	background: rgba(255, 255, 255, 0.1) !important;
	border: 1px solid rgba(255, 255, 255, 0.15) !important;
	color: #fff !important;
	border-radius: 50% !important;
	cursor: pointer !important;
	padding: 0 !important;
	z-index: 2 !important;
	transition: background 0.18s ease, transform 0.18s ease !important;
}

body .site-header .cdp-nav-close:hover {
	background: rgba(255, 255, 255, 0.2) !important;
	transform: rotate(90deg) !important;
}

/* Lista do menu vertical */
body .site-header .cdp-primary-menu {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	gap: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
	width: 100% !important;
}

body .site-header .cdp-primary-menu > li {
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
	background: transparent !important;
	border: none !important;
	width: 100% !important;
	position: relative !important;
}

body .site-header .cdp-primary-menu > li > a {
	display: block !important;
	padding: 13px 22px !important;
	width: 100% !important;
	max-width: 100% !important;
	color: #fff !important;
	font-family: "Inter", system-ui !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	letter-spacing: 0.03em !important;
	text-transform: uppercase !important;
	text-decoration: none !important;
	background: transparent !important;
	border: none !important;
	border-bottom: 1px solid rgba(255, 255, 255, 0.06) !important;
	transition: background 0.15s ease, color 0.15s ease !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	white-space: normal !important;
	overflow-wrap: anywhere !important;
	word-break: normal !important;
	line-height: 1.3 !important;
}

body .site-header .cdp-primary-menu > li > a::before {
	display: none !important;
}

body .site-header .cdp-primary-menu > li.menu-item-has-children > a::after,
body .site-header .cdp-primary-menu > li.page_item_has_children > a::after {
	display: none !important;
	content: none !important;
}

body .site-header .cdp-menu-caret {
	float: right !important;
	font-size: 13px !important;
	line-height: 1 !important;
	margin-top: 2px !important;
	transition: transform 0.18s ease !important;
}

body .site-header .cdp-primary-menu > li.is-open > a .cdp-menu-caret {
	transform: rotate(180deg) !important;
}

body .site-header .cdp-primary-menu > li > a:hover {
	background: rgba(255, 255, 255, 0.06) !important;
	color: var(--cdp-ouro) !important;
}

body .site-header .cdp-primary-menu > li.current-menu-item > a {
	color: var(--cdp-ouro) !important;
	border-left: 3px solid var(--cdp-ouro) !important;
	padding-left: 19px !important;
}

/* Submenus dentro do drawer (empilhados) */
body .site-header .cdp-primary-menu .sub-menu,
body .site-header .cdp-primary-menu .children,
body .site-header .cdp-primary-menu .cdp-mega {
	display: none !important;
	position: static !important;
	width: 100% !important;
	min-width: 0 !important;
	max-width: 100% !important;
	background: rgba(0, 0, 0, 0.2) !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
	border: none !important;
	box-shadow: none !important;
	border-radius: 0 !important;
}

body .site-header .cdp-primary-menu li.is-open > .sub-menu,
body .site-header .cdp-primary-menu li.is-open > .children {
	display: block !important;
}

body .site-header .cdp-primary-menu .cdp-mega {
	display: none !important;
}

body .site-header .cdp-primary-menu .sub-menu a,
body .site-header .cdp-primary-menu .children a {
	display: block !important;
	padding: 10px 22px 10px 38px !important;
	width: 100% !important;
	max-width: 100% !important;
	color: rgba(255, 255, 255, 0.78) !important;
	font-size: 12.5px !important;
	font-weight: 500 !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
	text-decoration: none !important;
	border-bottom: 1px solid rgba(255, 255, 255, 0.04) !important;
	border-radius: 0 !important;
	white-space: normal !important;
	overflow-wrap: anywhere !important;
}

body .site-header .cdp-primary-menu .sub-menu a:hover,
body .site-header .cdp-primary-menu .children a:hover {
	background: rgba(255, 255, 255, 0.05) !important;
	color: var(--cdp-ouro) !important;
}

/* ============================================================================
   5. BACKDROP (fundo escuro quando drawer aberto)
   ============================================================================ */
body .cdp-nav-backdrop {
	position: fixed !important;
	inset: 0 !important;
	background: rgba(0, 0, 0, 0.55) !important;
	-webkit-backdrop-filter: blur(2px) !important;
	backdrop-filter: blur(2px) !important;
	opacity: 0 !important;
	visibility: hidden !important;
	z-index: 1000 !important;
	transition: opacity 0.25s ease, visibility 0.25s !important;
	display: block !important;
}

body .cdp-nav-backdrop.is-active {
	opacity: 1 !important;
	visibility: visible !important;
}

/* Body lock quando drawer aberto */
body.cdp-menu-open {
	overflow: hidden !important;
}

/* Esconde caret/toggles antigos do walker se existirem */
body .cdp-submenu-toggle { display: none !important; }
