/*
Theme Name: Unidad Láser – themeula
Theme URI: https://unidadlaserdelatlantico.com
Description: Tema hijo de Hello Elementor para la Clínica Oftalmológica Unidad Láser. La maquetación vive en Elementor; aquí están la marca, Poppins y los tamaños de imagen.
Author: Unidad Láser
Template: hello-elementor
Version: 1.4.2
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: unidad-laser
*/

/* Los estilos de marca están en assets/css/brand.css, tech.css y portafolio.css */

/*
 * Pestañas de departamentos. El kit global de Elementor pinta todos los
 * <button> de azul sólido; estas reglas, más específicas, lo corrigen.
 */
body.ul-v2 .ulp-tabs button.ulp-tab {
	border: 1.5px solid #dfe6f6;
	background: #fff;
	background-image: none;
	color: #0b1230;
	box-shadow: none;
	font-family: inherit;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.2;
	text-transform: none;
	letter-spacing: normal;
}

body.ul-v2 .ulp-tabs button.ulp-tab:hover,
body.ul-v2 .ulp-tabs button.ulp-tab:focus-visible {
	border-color: #3d7bff;
	background: #fff;
	color: #3d7bff;
}

body.ul-v2 .ulp-tabs button.ulp-tab[aria-selected="true"],
body.ul-v2 .ulp-tabs button.ulp-tab[aria-selected="true"]:hover {
	border-color: transparent;
	background: linear-gradient(120deg, #3d7bff 0%, #6b5bff 45%, #35e0d8 100%);
	background-size: 160% 100%;
	color: #fff;
	box-shadow: 0 10px 26px -12px rgba(61, 123, 255, 0.9);
}

body.ul-v2 .ulp-tabs button.ulp-tab:focus-visible {
	outline: 3px solid #0b1230;
	outline-offset: 3px;
}

/* =========================================================================
 * Menú principal: cada elemento es un botón.
 * Al pasar el cursor se llena con el degradado de la marca, y la página
 * en la que está el visitante se queda con ese mismo estado.
 * ====================================================================== */

body.ul-v2 .ul-hdr .elementor-nav-menu--main > .elementor-nav-menu {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	gap: 6px;
}

body.ul-v2 .ul-hdr .elementor-nav-menu--main .elementor-nav-menu > li {
	margin: 0;
}

body.ul-v2 .ul-hdr .elementor-nav-menu--main .elementor-item {
	position: relative;
	display: inline-flex;
	align-items: center;
	min-height: 40px;
	margin: 0 !important;
	padding: 8px 15px !important;
	border: 1.5px solid #dfe6f6;
	border-radius: 5px;
	background: rgba(255, 255, 255, 0.7) !important;
	color: #0b1230 !important;
	fill: #0b1230;
	font-family: Poppins, sans-serif;
	font-size: 14.5px;
	font-weight: 500;
	line-height: 1.2;
	white-space: nowrap;
	transition: background-color 0.35s cubic-bezier(0.22, 1, 0.36, 1), border-color 0.35s cubic-bezier(0.22, 1, 0.36, 1), color 0.35s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.35s cubic-bezier(0.22, 1, 0.36, 1), transform 0.35s cubic-bezier(0.22, 1, 0.36, 1);
}

/* Sin el subrayado del puntero de Elementor */
body.ul-v2 .ul-hdr .elementor-nav-menu--main .elementor-item::before,
body.ul-v2 .ul-hdr .elementor-nav-menu--main .elementor-item::after {
	display: none !important;
}

/* Hover, foco y página actual: mismo estado */
body.ul-v2 .ul-hdr .elementor-nav-menu--main .elementor-item:hover,
body.ul-v2 .ul-hdr .elementor-nav-menu--main .elementor-item:focus-visible,
body.ul-v2 .ul-hdr .elementor-nav-menu--main .elementor-item.elementor-item-active,
body.ul-v2 .ul-hdr .elementor-nav-menu--main .current-menu-item > .elementor-item,
body.ul-v2 .ul-hdr .elementor-nav-menu--main .current-menu-ancestor > .elementor-item,
body.ul-v2 .ul-hdr .elementor-nav-menu--main .current_page_parent > .elementor-item {
	border-color: transparent;
	background: linear-gradient(120deg, #3d7bff 0%, #6b5bff 55%, #4fb8f0 100%) !important;
	color: #fff !important;
	fill: #fff;
	box-shadow: 0 8px 22px -10px rgba(61, 123, 255, 0.85);
}

body.ul-v2 .ul-hdr .elementor-nav-menu--main .elementor-item:hover,
body.ul-v2 .ul-hdr .elementor-nav-menu--main .elementor-item:focus-visible {
	transform: translateY(-1px);
}

body.ul-v2 .ul-hdr .elementor-nav-menu--main .elementor-item:focus-visible {
	outline: 3px solid #35e0d8;
	outline-offset: 2px;
}

/* Portada: encabezado oscuro translúcido antes de hacer scroll */
body.ul-home:not(.is-scrolled) .ul-hdr .elementor-nav-menu--main .elementor-item {
	border-color: rgba(200, 211, 245, 0.28);
	background: rgba(255, 255, 255, 0.06) !important;
	color: #e9eeff !important;
	fill: #e9eeff;
}

body.ul-home:not(.is-scrolled) .ul-hdr .elementor-nav-menu--main .elementor-item:hover,
body.ul-home:not(.is-scrolled) .ul-hdr .elementor-nav-menu--main .elementor-item:focus-visible,
body.ul-home:not(.is-scrolled) .ul-hdr .elementor-nav-menu--main .elementor-item.elementor-item-active,
body.ul-home:not(.is-scrolled) .ul-hdr .elementor-nav-menu--main .current-menu-item > .elementor-item {
	border-color: transparent;
	background: linear-gradient(120deg, #3d7bff 0%, #6b5bff 55%, #4fb8f0 100%) !important;
	color: #fff !important;
	fill: #fff;
	box-shadow: 0 8px 26px -8px rgba(53, 224, 216, 0.55);
}

/* Pantallas medianas: botones más compactos para que quepan en una fila */
@media (max-width: 1280px) {
	body.ul-v2 .ul-hdr .elementor-nav-menu--main > .elementor-nav-menu {
		gap: 4px;
	}

	body.ul-v2 .ul-hdr .elementor-nav-menu--main .elementor-item {
		min-height: 36px;
		padding: 7px 11px !important;
		font-size: 13.5px;
	}
}

/* Menú desplegable (tablet y celular): botones a todo el ancho */
body.ul-v2 .ul-hdr .elementor-nav-menu--dropdown {
	padding: 10px;
}

body.ul-v2 .ul-hdr .elementor-nav-menu--dropdown .elementor-nav-menu {
	display: flex !important;
	flex-direction: column;
	align-items: stretch !important;
	gap: 6px;
	width: 100%;
}

body.ul-v2 .ul-hdr .elementor-nav-menu--dropdown .elementor-nav-menu > li {
	width: 100% !important;
	margin: 0;
	float: none;
}

body.ul-v2 .ul-hdr .elementor-nav-menu--dropdown .elementor-item {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	width: 100%;
	box-sizing: border-box;
	min-height: 48px;
	padding: 12px 18px !important;
	border: 1.5px solid #dfe6f6 !important;
	border-radius: 5px;
	background: #fff !important;
	color: #0b1230 !important;
	font-family: Poppins, sans-serif;
	font-size: 16px;
	font-weight: 500;
	text-align: left;
	transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease;
}

body.ul-v2 .ul-hdr .elementor-nav-menu--dropdown .elementor-item:hover,
body.ul-v2 .ul-hdr .elementor-nav-menu--dropdown .elementor-item:focus-visible,
body.ul-v2 .ul-hdr .elementor-nav-menu--dropdown .elementor-item.elementor-item-active,
body.ul-v2 .ul-hdr .elementor-nav-menu--dropdown .current-menu-item > .elementor-item {
	border-color: transparent !important;
	background: linear-gradient(120deg, #3d7bff 0%, #6b5bff 55%, #4fb8f0 100%) !important;
	color: #fff !important;
}

@media (prefers-reduced-motion: reduce) {
	body.ul-v2 .ul-hdr .elementor-nav-menu--main .elementor-item {
		transition: none;
	}

	body.ul-v2 .ul-hdr .elementor-nav-menu--main .elementor-item:hover,
	body.ul-v2 .ul-hdr .elementor-nav-menu--main .elementor-item:focus-visible {
		transform: none;
	}
}
