<?php
/**
 * Cabecera SLR — menú sólido + CTA Contacto + selector idioma.
 * Rojo #D41E2B · Azul #1A2F5C
 *
 * Contacto va en rojo por defecto (CTA permanente).
 * Se anulan underlines/fx de Enfold que se salen del botón.
 */
:root {
	--slr-nav-red: #D41E2B;
	--slr-nav-red-hover: #b01924;
	--slr-nav-blue: #1A2F5C;
}

/* —— Fila menú + idioma —— */
#top .main_menu {
	display: flex !important;
	align-items: center !important;
	flex-wrap: nowrap;
	gap: 0;
}

#top .main_menu .av-main-nav-wrap {
	flex: 1 1 auto;
}

/* —— Ítems normales: underline contenido al texto —— */
#top .av-main-nav > li > a {
	position: relative;
}

#top .av-main-nav > li:not(.slr-nav-cta) > a .avia-menu-fx,
#top .av-main-nav > li:not(.slr-nav-cta) > a:after,
#top .av-main-nav > li:not(.slr-nav-cta) > a:before {
	/* Dejar el fx de Enfold pero acotado al texto si existe */
	max-width: 100%;
}

#top .av-main-nav > li:not(.slr-nav-cta).current-menu-item > a,
#top .av-main-nav > li:not(.slr-nav-cta).current-menu-ancestor > a,
#top .av-main-nav > li:not(.slr-nav-cta).current_page_item > a,
#top .av-main-nav > li:not(.slr-nav-cta).current_page_ancestor > a {
	color: #fff !important;
}

#top .av-main-nav > li:not(.slr-nav-cta).current-menu-item > a .avia-menu-text,
#top .av-main-nav > li:not(.slr-nav-cta).current-menu-ancestor > a .avia-menu-text {
	box-shadow: inset 0 -2px 0 var(--slr-nav-red);
}

/* —— CTA Contacto: pastilla roja, misma altura que el resto, rollover claro —— */
#top #wrap_all #header .av-main-nav > li.slr-nav-cta {
	margin-left: 8px;
}

/*
 * Misma caja que Inicio/Blog (Enfold usa ~70px line-height).
 * El color rojo vive en .avia-menu-text para no romper la alineación.
 */
#top #wrap_all #header .av-main-nav > li.slr-nav-cta > a,
#top #wrap_all #header .av-main-nav > li.slr-nav-cta.current_page_item > a,
#top #wrap_all #header .av-main-nav > li.slr-nav-cta.current-menu-item > a,
#top #wrap_all #header .av-main-nav > li.slr-nav-cta.menu-item-home > a {
	background: transparent !important;
	color: #fff !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	text-decoration: none !important;
	margin: 0 !important;
	/* No tocar height / line-height / display: Enfold los iguala al resto (≈70px) */
}

#top #wrap_all #header .av-main-nav > li.slr-nav-cta > a .avia-menu-text,
#top #wrap_all #header .av-main-nav > li.slr-nav-cta.current_page_item > a .avia-menu-text,
#top #wrap_all #header .av-main-nav > li.slr-nav-cta.current-menu-item > a .avia-menu-text {
	display: inline-block !important;
	vertical-align: middle !important;
	background: var(--slr-nav-red) !important;
	color: #fff !important;
	border-radius: 4px !important;
	padding: 0.4em 0.95em !important;
	margin: 0 !important;
	border: 0 !important;
	box-shadow: none !important;
	text-decoration: none !important;
	line-height: 1.2 !important;
	font-weight: 600 !important;
	transition: background 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease, filter 0.18s ease;
}

/* Sin raya Enfold (evita la línea que se alarga) */
#top #wrap_all #header .av-main-nav > li.slr-nav-cta > a .avia-menu-fx,
#top #wrap_all #header .av-main-nav > li.slr-nav-cta > a .avia-menu-fx *,
#top #wrap_all #header .av-main-nav > li.slr-nav-cta > a:before,
#top #wrap_all #header .av-main-nav > li.slr-nav-cta > a:after,
#top #wrap_all #header .av-main-nav > li.slr-nav-cta:hover > a .avia-menu-fx,
#top #wrap_all #header .av-main-nav > li.slr-nav-cta.current-menu-item > a .avia-menu-fx,
#top #wrap_all #header .av-main-nav > li.slr-nav-cta.current_page_item > a .avia-menu-fx {
	display: none !important;
	visibility: hidden !important;
	width: 0 !important;
	height: 0 !important;
	opacity: 0 !important;
	border: 0 !important;
	background: none !important;
	box-shadow: none !important;
	content: none !important;
}

/* Rollover: más oscuro + ligera elevación + brillo (efecto claro) */
#top #wrap_all #header .av-main-nav > li.slr-nav-cta > a:hover .avia-menu-text,
#top #wrap_all #header .av-main-nav > li.slr-nav-cta > a:focus .avia-menu-text {
	background: var(--slr-nav-red-hover) !important;
	color: #fff !important;
	transform: translateY(-1px);
	box-shadow: 0 4px 14px rgba(212, 30, 43, 0.5) !important;
	filter: brightness(1.08);
}

#top #wrap_all #header .av-main-nav > li.slr-nav-cta > a:hover,
#top #wrap_all #header .av-main-nav > li.slr-nav-cta > a:focus {
	background: transparent !important;
	color: #fff !important;
	text-decoration: none !important;
}

/* Submenú Servicios: más legible */
#top .av-main-nav > li > ul.sub-menu {
	border-top: 2px solid var(--slr-nav-red);
	min-width: 220px;
}

#top .av-main-nav > li > ul.sub-menu a {
	white-space: nowrap;
}

/* —— Selector idioma (desktop) —— */
#top #header .slr-lang-switch,
#top #header .slr-lang-switch a,
#top #header .slr-lang-switch span {
	height: auto !important;
	line-height: 1.2 !important;
	min-height: 0 !important;
}

.slr-lang-switch {
	display: inline-flex !important;
	flex-direction: row !important;
	align-items: center !important;
	align-self: center !important;
	gap: 0.35rem;
	margin: 0 0 0 14px !important;
	padding: 0.2rem 0.55rem !important;
	flex: 0 0 auto;
	white-space: nowrap;
	border: 1px solid rgba(255, 255, 255, 0.28);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.06);
	box-sizing: border-box;
	vertical-align: middle;
}

.slr-lang-switch__globe {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: rgba(255, 255, 255, 0.85);
	flex-shrink: 0;
}

.slr-lang-switch__globe svg {
	display: block;
	width: 14px;
	height: 14px;
}

.slr-lang-switch__sep {
	display: inline-block;
	margin: 0 0.15rem;
	color: rgba(255, 255, 255, 0.35);
	font-weight: 400;
	font-size: 0.75rem;
	user-select: none;
}

.slr-lang-switch__link {
	display: inline !important;
	padding: 0 !important;
	margin: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	font-size: 0.72rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	text-decoration: none !important;
	color: rgba(255, 255, 255, 0.55) !important;
	transition: color 0.15s ease;
}

.slr-lang-switch__link:hover,
.slr-lang-switch__link:focus {
	color: #fff !important;
	background: transparent !important;
	text-decoration: none !important;
}

.slr-lang-switch__link.is-active {
	color: #fff !important;
	text-decoration: underline !important;
	text-underline-offset: 3px;
	text-decoration-color: var(--slr-nav-red) !important;
	text-decoration-thickness: 2px;
}

.html_header_transparency #top .slr-lang-switch {
	border-color: rgba(255, 255, 255, 0.35);
	background: rgba(0, 0, 0, 0.2);
}

/* —— Fullwidth: ocultar hueco de sidebar si Enfold aún lo imprime —— */
body.slr-fullwidth #top #main .sidebar,
body.slr-fullwidth.fullsize #top #main .sidebar {
	display: none !important;
}

body.slr-fullwidth #top #main .content {
	width: 100% !important;
	max-width: 100% !important;
	float: none !important;
	margin: 0 !important;
}

/* —— Móvil / tablet (hamburguesa) —— */
@media only screen and (max-width: 989px) {
	#top .av-main-nav > li.slr-nav-cta {
		display: block;
	}

	#top .av-main-nav > li.slr-nav-cta > a {
		margin: 10px 16px !important;
		display: block !important;
		text-align: center;
		width: calc(100% - 32px);
		box-sizing: border-box;
		padding: 0 !important;
	}

	#top .av-main-nav > li.slr-nav-cta > a .avia-menu-text {
		display: block !important;
		width: 100%;
		box-sizing: border-box;
		border-radius: 6px !important;
		padding: 0.75em 1em !important;
		text-align: center;
	}

	/*
	 * Idioma en móvil:
	 * 1) Pastilla ES|EN en la barra, a la izquierda del burger (siempre visible).
	 * 2) Bloque «Idioma» también al final del overlay abierto.
	 */
	#top #wrap_all #header .main_menu {
		display: flex !important;
		align-items: center !important;
		justify-content: flex-end !important;
		flex-wrap: nowrap !important;
		gap: 8px;
		width: auto;
	}

	#top #header .main_menu > .slr-lang-switch,
	#top #header .slr-lang-switch {
		display: inline-flex !important;
		order: 1;
		margin: 0 !important;
		padding: 0.25rem 0.5rem !important;
		position: relative;
		z-index: 40;
		flex: 0 0 auto;
	}

	#top #wrap_all #header .av-main-nav-wrap {
		flex: 0 0 auto;
		order: 2;
		margin-left: 0;
	}

	#top #wrap_all #header .av-burger-menu-main {
		position: relative;
		z-index: 30;
		margin-left: 0 !important;
		float: none;
	}

	/* En el menú desktop clonado (#avia-menu) no hace falta el ítem idioma */
	#top #wrap_all #header #avia-menu > li.slr-lang-menu-item {
		display: none !important;
	}

	#top #wrap_all #header .logo {
		max-width: 160px !important;
		width: 160px !important;
		overflow: hidden;
		z-index: 1;
	}

	#top #wrap_all #header .logo a {
		display: inline-block;
		max-width: 100%;
	}

	#top #wrap_all #header .logo img,
	#top #wrap_all #header .logo img.avia-img-lazy-loading-not-needed,
	#top #wrap_all .av-logo-container .logo img {
		max-width: 148px !important;
		width: auto !important;
		height: auto !important;
		max-height: 44px !important;
		object-fit: contain !important;
	}

	/* Overlay abierto: idioma al final, bien visible */
	#top #av-burger-menu-ul > li.slr-lang-menu-item {
		display: flex !important;
		flex-direction: column;
		align-items: flex-start;
		justify-content: center;
		gap: 0.5rem;
		padding: 1.25rem 1.5rem !important;
		border-top: 1px solid rgba(255, 255, 255, 0.12);
		margin-top: 0.75rem;
		height: auto !important;
		min-height: 0 !important;
		line-height: 1.3 !important;
		opacity: 1 !important;
		visibility: visible !important;
	}

	#top #av-burger-menu-ul .slr-lang-menu-item__label {
		display: block !important;
		font-size: 0.7rem;
		letter-spacing: 0.08em;
		text-transform: uppercase;
		color: rgba(255, 255, 255, 0.5);
	}

	#top #av-burger-menu-ul .slr-lang-menu-item__links {
		display: inline-flex !important;
		align-items: center;
		gap: 0.45rem;
	}

	#top #av-burger-menu-ul .slr-lang-switch__link {
		font-size: 1.05rem !important;
		color: rgba(255, 255, 255, 0.8) !important;
		height: auto !important;
		line-height: 1.2 !important;
		padding: 0.15rem 0.25rem !important;
	}

	#top #av-burger-menu-ul .slr-lang-switch__link.is-active {
		color: #fff !important;
	}

	#top #av-burger-menu-ul > li.slr-nav-cta > a:before,
	#top #av-burger-menu-ul > li.slr-nav-cta > a:after,
	#top #av-burger-menu-ul > li.slr-nav-cta > a .avia-menu-fx {
		display: none !important;
	}
}

@media only screen and (min-width: 990px) {
	#top .av-main-nav > li.slr-lang-menu-item {
		display: none !important;
	}
}
