/**
 * Urra Core — Estilos del módulo de menú.
 *
 * Mobile-first. Consume tokens del design system Urrá:
 * colores vía `--e-global-color-*` y tipografía vía
 * `--urra-font-*`.
 * Resets scopeados a `.uc-menu-wrap` para sobrevivir a Elementor / themes.
 */

/* ─── Tokens locales del módulo ────────────────────────────────── */
.uc-menu-wrap,
.uc-flyout,
.uc-mservicios,
.uc-maccordion {
	--uc-color-primary:   var(--e-global-color-primary, #3399CC);
	--uc-color-secondary: var(--e-global-color-secondary, #009966);
	--uc-color-brand-50:  var(--e-global-color-blue-50, #E6F3FA);
	--uc-color-border:    var(--e-global-color-neutral-200, #E5E7EB);
	--uc-color-text:      var(--e-global-color-text, var(--e-global-color-neutral-800, #1F2937));
}

/* Resets ------------------------------------------------------- */
.uc-menu-wrap,
.uc-menu-wrap *,
.uc-flyout,
.uc-flyout * {
	box-sizing: border-box;
}

.uc-menu-wrap,
.uc-flyout {
	font-family: var(--urra-font-body, system-ui, sans-serif);
}

.uc-menu-wrap ul,
.uc-menu-wrap ol,
.uc-menu-wrap li,
.uc-flyout ul,
.uc-flyout ol,
.uc-flyout li {
	list-style: none !important;
	list-style-image: none !important;
	margin: 0;
	padding: 0;
	background-image: none;
}

.uc-menu-wrap li::before,
.uc-menu-wrap li::marker,
.uc-flyout li::before,
.uc-flyout li::marker {
	content: none !important;
	display: none !important;
}

.uc-menu-wrap a,
.uc-flyout a {
	text-decoration: none;
}

/* Desktop menu ------------------------------------------------- */
.uc-menu--desktop {
	display: flex;
	position: relative;
}

@media (max-width: 1023.98px) {
	.uc-menu--desktop .uc-menu-item--simple {
		display: none;
	}
}

@media (min-width: 1024px) {
	.uc-menu--desktop {
		gap: 8px;
		align-items: center;
		flex-wrap: nowrap;
	}
}

.uc-menu-item {
	position: relative;
}

.uc-menu-item--megamenu {
	position: static;
}

.uc-menu-wrap .uc-menu-link {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 8px 16px;
	font-family: var(--urra-font-heading, inherit);
	font-size: 16px;
	font-weight: 500;
	line-height: 1.2;
	color: var(--uc-color-text) !important;
	text-decoration: none;
	border-radius: 8px;
	transition: color 0.2s ease, background-color 0.2s ease;
	white-space: nowrap;
}

.uc-menu-wrap .uc-menu-link:hover,
.uc-menu-wrap .uc-menu-item.is-open > .uc-menu-link {
	color: var(--uc-color-primary) !important;
	background: var(--uc-color-brand-50);
}

.uc-menu-link__label {
	display: inline-block;
}

.uc-menu-chevron {
	display: inline-block;
	flex-shrink: 0;
	width: 12px;
	height: 12px;
	transition: transform 0.2s ease;
}

.uc-menu-item.is-open > .uc-menu-link .uc-menu-chevron {
	transform: rotate(180deg);
}

/* Megamenu ----------------------------------------------------- */
.uc-menu-megamenu {
	position: absolute;
	top: calc(100% + 8px);
	left: 50%;
	transform: translateX(-50%) translateY(-8px);
	width: min(1080px, 94vw);
	background: #FFFFFF;
	border-radius: 16px;
	box-shadow: 0 12px 36px rgba(15, 23, 42, 0.10), 0 2px 8px rgba(15, 23, 42, 0.04);
	padding: 24px;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.2s ease, visibility 0.2s ease, transform 0.2s ease;
	z-index: 100;
	pointer-events: none;
}

.uc-menu-item--megamenu.is-open .uc-menu-megamenu {
	opacity: 1;
	visibility: visible;
	transform: translateX(-50%) translateY(0);
	pointer-events: auto;
}

.uc-menu-megamenu__inner {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 8px;
}

.uc-menu-megamenu__item {
	min-width: 0;
	display: flex;
}

.uc-menu-wrap .uc-menu-card {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 14px;
	border-radius: 12px;
	background: #FFFFFF;
	box-shadow: inset 0 0 0 1px var(--e-global-color-neutral-300, #D1D5DB) !important;
	text-decoration: none;
	transition: box-shadow 0.2s ease, transform 0.18s cubic-bezier(0.22, 1, 0.36, 1);
	flex: 1;
	transform: scale(1);
	transform-origin: center;
}

.uc-menu-wrap .uc-menu-card.is-tap-active {
	transform: scale(0.97);
}

.uc-menu-wrap .uc-menu-card:hover {
	box-shadow: inset 0 0 0 1.5px var(--uc-color-primary) !important;
}

.uc-menu-card__icon {
	flex-shrink: 0;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: var(--uc-color-brand-50);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: var(--uc-color-primary);
}

.uc-menu-card__icon svg {
	width: 20px;
	height: 20px;
}

.uc-menu-card__icon svg path,
.uc-menu-card__icon svg circle,
.uc-menu-card__icon svg rect,
.uc-menu-card__icon svg line,
.uc-menu-card__icon svg polyline,
.uc-menu-card__icon svg polygon {
	stroke: currentColor;
}

.uc-menu-card__body {
	display: block;
	min-width: 0;
}

.uc-menu-card__title {
	display: block;
	font-family: var(--urra-font-heading, inherit);
	font-weight: 600;
	font-size: 15px;
	line-height: 1.3;
	color: var(--e-global-color-neutral-900, #111827);
	margin: 0 0 4px;
	transition: color 0.2s ease;
}

.uc-menu-card:hover .uc-menu-card__title,
.uc-menu-card:focus-visible .uc-menu-card__title {
	color: var(--uc-color-primary);
}

.uc-menu-card__desc {
	display: block;
	font-family: var(--urra-font-body, inherit);
	font-size: 13px;
	font-weight: 400;
	color: var(--e-global-color-neutral-500, #6B7280);
	line-height: 1.4;
	margin: 0;
}

/* Dropdown lista ----------------------------------------------- */
.uc-menu-wrap .uc-menu-dropdown {
	position: absolute;
	top: calc(100% + 8px);
	left: 50%;
	transform: translateX(-50%) translateY(-8px);
	min-width: 280px;
	background: #FFFFFF;
	border-radius: 14px;
	box-shadow: 0 12px 36px rgba(15, 23, 42, 0.10), 0 2px 8px rgba(15, 23, 42, 0.04);
	padding: 12px;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.2s ease, visibility 0.2s ease, transform 0.2s ease;
	z-index: 100;
	pointer-events: none;
}

.uc-menu-item--dropdown.is-open .uc-menu-dropdown {
	opacity: 1;
	visibility: visible;
	transform: translateX(-50%) translateY(0);
	pointer-events: auto;
}

.uc-menu-dropdown__item {
	display: block;
}

.uc-menu-wrap .uc-menu-dropdown-link,
.uc-menu-dropdown .uc-menu-dropdown-link {
	display: block;
	margin: 2px 0;
	padding: 14px 18px;
	font-family: var(--urra-font-heading, inherit);
	font-size: 15px;
	font-weight: 500;
	line-height: 1.3;
	color: var(--uc-color-text) !important;
	text-decoration: none;
	border-radius: 10px;
	white-space: nowrap;
	transform: scale(1);
	transform-origin: center left;
	transition: background-color 0.2s ease, color 0.2s ease, transform 0.18s cubic-bezier(0.22, 1, 0.36, 1);
}

.uc-menu-dropdown-link.is-tap-active {
	transform: scale(0.97);
}

.uc-menu-wrap .uc-menu-dropdown-link:hover,
.uc-menu-dropdown .uc-menu-dropdown-link:hover {
	background: var(--uc-color-brand-50);
	color: var(--uc-color-primary) !important;
}

/* Flyout — botón "Menú" del header ---------------------------- */
.uc-menu-item--flyout {
	position: static;
}

.uc-menu-wrap .uc-flyout-trigger {
	appearance: none;
	-webkit-appearance: none;
	display: inline-flex;
	align-items: center;
	gap: 10px;
	margin: 0;
	padding: 10px 20px;
	font-family: var(--urra-font-heading, inherit);
	font-size: 15px;
	font-weight: 600;
	line-height: 1;
	color: var(--e-global-color-neutral-900, #111827) !important;
	background: transparent !important;
	background-color: transparent !important;
	border: 1.5px solid var(--e-global-color-neutral-300, #D1D5DB);
	border-radius: 12px;
	cursor: pointer;
	white-space: nowrap;
	transition: border-color 0.2s ease, background-color 0.2s ease, color 0.2s ease;
}

.uc-menu-wrap .uc-flyout-trigger:hover {
	background: transparent !important;
	background-color: transparent !important;
	border-color: var(--e-global-color-neutral-900, #111827);
	color: var(--e-global-color-neutral-900, #111827) !important;
}

.uc-menu-wrap .uc-flyout-trigger[aria-expanded="true"] {
	border-color: var(--e-global-color-neutral-900, #111827);
	background: transparent !important;
	background-color: transparent !important;
}

.uc-flyout-trigger__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 18px;
	height: 18px;
}

.uc-flyout-trigger__icon svg {
	width: 18px;
	height: 18px;
}

.uc-flyout-trigger[aria-expanded="false"] .uc-flyout-trigger__icon--close,
.uc-flyout-trigger[aria-expanded="true"] .uc-flyout-trigger__icon--open {
	display: none;
}

/* Flyout — panel full-width ------------------------------------ */
.uc-flyout {
	--uc-flyout-anim: 280ms cubic-bezier(0.22, 0.61, 0.36, 1);
	position: fixed;
	top: var(--uc-header-height, 80px);
	left: 0;
	right: 0;
	width: 100%;
	max-width: 100vw;
	background: #FFFFFF;
	color: var(--uc-color-text);
	box-shadow: 0 18px 40px rgba(15, 23, 42, 0.10), 0 2px 8px rgba(15, 23, 42, 0.04);
	border-top: 1px solid var(--uc-color-border);
	z-index: 9998;
	opacity: 0;
	visibility: hidden;
	transform: translateY(-12px);
	pointer-events: none;
	transition:
		opacity var(--uc-flyout-anim),
		transform var(--uc-flyout-anim),
		visibility 0s linear var(--uc-flyout-anim);
}

.uc-flyout.is-open {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
	pointer-events: auto;
	transition:
		opacity var(--uc-flyout-anim),
		transform var(--uc-flyout-anim),
		visibility 0s linear 0s;
}

.uc-flyout__container {
	max-width: 1400px;
	margin: 0 auto;
	padding: 36px 0 28px;
}

.uc-flyout__columns {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: clamp(24px, 3vw, 48px);
}

.uc-flyout__column {
	display: flex;
	flex-direction: column;
	gap: 14px;
	min-width: 0;
}

.uc-flyout__column-title {
	margin: 0;
	padding: 0;
	border: 0;
	font-family: var(--urra-font-heading, inherit);
	font-size: 12px;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--uc-color-secondary, #009966) !important;
}

.uc-flyout__column-list {
	display: flex;
	flex-direction: column;
	gap: 14px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.uc-flyout__item {
	position: relative;
	display: block;
	margin: 0;
	padding: 0;
	list-style: none;
}

.uc-flyout__item::before,
.uc-flyout__item::marker {
	content: none !important;
	display: none !important;
}

/* Divisor sutil centrado en el gap entre items. */
.uc-flyout__item + .uc-flyout__item::after {
	content: "";
	position: absolute;
	top: -7px;
	left: 0;
	right: 0;
	height: 1px;
	background: var(--uc-color-border);
	pointer-events: none;
}

.uc-menu-wrap .uc-flyout__link,
.uc-flyout .uc-flyout__link {
	display: block;
	margin: 0;
	padding: 0;
	color: inherit !important;
	text-decoration: none !important;
	transform: scale(1);
	transform-origin: center left;
	transition: color 0.18s ease, transform 0.18s cubic-bezier(0.22, 1, 0.36, 1);
}

.uc-flyout__link.is-tap-active {
	transform: scale(0.97);
}

.uc-menu-wrap .uc-flyout__link:hover,
.uc-flyout .uc-flyout__link:hover,
.uc-menu-wrap .uc-flyout__link:focus-visible,
.uc-flyout .uc-flyout__link:focus-visible {
	background: transparent !important;
	text-decoration: none !important;
}

.uc-flyout__link-title {
	display: block;
	font-family: var(--urra-font-heading, inherit);
	font-size: 15px;
	font-weight: 600;
	line-height: 1.3;
	color: var(--e-global-color-neutral-900, #111827);
	margin: 0 0 2px;
	transition: color 0.18s ease;
}

.uc-flyout__link:hover .uc-flyout__link-title,
.uc-flyout__link:focus-visible .uc-flyout__link-title {
	color: var(--uc-color-secondary, #009966);
}

.uc-flyout__link-desc {
	display: block;
	font-family: var(--urra-font-body, inherit);
	font-size: 13px;
	font-weight: 400;
	line-height: 1.4;
	color: var(--e-global-color-neutral-500, #6B7280);
}

/* Flyout — barra inferior (accesos rápidos) -------------------- */
.uc-flyout__secondary {
	background: var(--e-global-color-neutral-50, #F9FAFB);
	border-top: 1px solid var(--uc-color-border);
}

.uc-flyout__secondary-inner {
	max-width: 1400px;
	margin: 0 auto;
	padding: 18px 0;
}

.uc-flyout__secondary-list {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 28px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.uc-flyout__secondary-item {
	display: inline-flex;
	margin: 0;
	padding: 0;
	list-style: none;
}

.uc-flyout__secondary-item::before,
.uc-flyout__secondary-item::marker {
	content: none !important;
	display: none !important;
}

.uc-menu-wrap .uc-flyout__secondary-link,
.uc-flyout .uc-flyout__secondary-link {
	display: inline-flex;
	align-items: center;
	padding: 6px 0;
	font-family: var(--urra-font-heading, inherit);
	font-size: 13px;
	font-weight: 500;
	line-height: 1.3;
	color: var(--e-global-color-neutral-700, #374151) !important;
	text-decoration: none !important;
	transform: scale(1);
	transform-origin: center;
	transition: color 0.18s ease, transform 0.18s cubic-bezier(0.22, 1, 0.36, 1);
}

.uc-flyout__secondary-link.is-tap-active {
	transform: scale(0.97);
}

.uc-menu-wrap .uc-flyout__secondary-link:hover,
.uc-flyout .uc-flyout__secondary-link:hover {
	color: var(--uc-color-primary) !important;
	text-decoration: none !important;
}

/* Flyout — mobile (vertical megamenu + scroll secundario) ------ */
@media (max-width: 1023.98px) {
	.uc-flyout {
		top: var(--uc-header-height, 80px);
		right: 0;
		left: 0;
		width: 100%;
		max-width: 100%;
		height: calc(100dvh - var(--uc-header-height, 80px));
		max-height: calc(100dvh - var(--uc-header-height, 80px));
		z-index: 1000000;
		display: flex;
		flex-direction: column;
		overflow: hidden;
		border-top: 1px solid var(--uc-color-border);
		box-shadow: none;
	}

	.uc-flyout__container {
		flex: 1 1 auto;
		min-height: 0;
		max-width: none;
		width: 100%;
		margin: 0;
		padding: 0;
		overflow-x: hidden;
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
	}

	.uc-flyout__columns {
		display: flex;
		flex-direction: column;
		gap: 0;
		width: 100%;
	}

	.uc-flyout__column {
		display: flex;
		flex-direction: column;
		width: 100%;
		min-width: 0;
		padding: 20px 16px 8px;
		border-bottom: 1px solid var(--uc-color-border);
	}

	.uc-flyout__column-title {
		margin: 0 0 8px;
	}

	.uc-flyout__column-list {
		display: flex;
		flex-direction: column;
		gap: 0;
		width: 100%;
	}

	.uc-flyout__item {
		display: block;
		width: 100%;
		border-bottom: 1px solid var(--uc-color-border);
	}

	.uc-flyout__item + .uc-flyout__item::after {
		display: none;
	}

	.uc-flyout__item:last-child {
		border-bottom: none;
	}

	.uc-flyout .uc-flyout__link {
		display: block;
		width: 100%;
		padding: 8px 0;
		min-height: 56px;
	}

	.uc-flyout .uc-flyout__link-title {
		margin: 0 0 4px;
	}

	.uc-flyout__link-title,
	.uc-flyout__link-desc {
		white-space: normal;
		word-wrap: break-word;
		overflow-wrap: break-word;
	}

	.uc-flyout__secondary {
		flex-shrink: 0;
		width: 100%;
	}

	.uc-flyout__secondary-inner {
		max-width: none;
		width: 100%;
		margin: 0;
		padding: 14px 16px;
		overflow-x: auto;
		overflow-y: hidden;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
	}

	.uc-flyout__secondary-inner::-webkit-scrollbar {
		display: none;
	}

	.uc-flyout__secondary-list {
		display: flex;
		flex-wrap: nowrap;
		gap: 0 20px;
		width: max-content;
		min-width: 100%;
	}

	.uc-flyout__secondary-item {
		flex-shrink: 0;
	}

	.uc-flyout .uc-flyout__secondary-link {
		white-space: nowrap;
	}
}

/* Body lock cuando el flyout está abierto ---------------------- */
body.uc-flyout-is-open {
	overflow: hidden;
}

/* Focus visible — indicador unificado WCAG 2.4.7 --------------- */
.uc-menu-wrap .uc-menu-link:focus-visible,
.uc-menu-wrap .uc-menu-card:focus-visible,
.uc-menu-wrap .uc-menu-dropdown-link:focus-visible,
.uc-menu-dropdown .uc-menu-dropdown-link:focus-visible,
.uc-menu-wrap .uc-flyout-trigger:focus-visible,
.uc-flyout .uc-flyout__link:focus-visible,
.uc-flyout .uc-flyout__secondary-link:focus-visible,
.uc-mservicios__link:focus-visible,
.uc-maccordion__toggle:focus-visible,
.uc-maccordion__link:focus-visible,
.uc-maccordion__leaf-link:focus-visible {
	outline: 2px solid var(--uc-color-primary);
	outline-offset: 2px;
}

.uc-menu-wrap .uc-menu-card:focus-visible {
	box-shadow: inset 0 0 0 1.5px var(--uc-color-primary) !important;
}

/* Servicios mobile (lista vertical) ---------------------------- */
.uc-mservicios,
.uc-mservicios * {
	box-sizing: border-box;
}

.uc-mservicios {
	font-family: var(--urra-font-body, system-ui, sans-serif);
	color: var(--uc-color-text);
}

.uc-mservicios .uc-mservicios__list {
	list-style: none !important;
	list-style-image: none !important;
	margin: 0 !important;
	padding: 0 !important;
	background: none !important;
}

.uc-mservicios .uc-mservicios__item {
	margin: 0 !important;
	padding: 0 !important;
	background: none !important;
	list-style: none !important;
}

.uc-mservicios .uc-mservicios__item::before,
.uc-mservicios .uc-mservicios__item::marker {
	content: none !important;
	display: none !important;
}

.uc-mservicios .uc-mservicios__item + .uc-mservicios__item {
	border-top: 1px solid var(--uc-color-border);
}

.uc-mservicios .uc-mservicios__link {
	display: flex !important;
	align-items: center !important;
	gap: 16px !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 14px 4px !important;
	min-height: 56px;
	background: transparent !important;
	background-color: transparent !important;
	background-image: none !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	color: inherit !important;
	text-decoration: none !important;
	text-transform: none !important;
	letter-spacing: normal !important;
	font-family: inherit !important;
	transition: background-color 0.15s ease;
}

.uc-mservicios .uc-mservicios__link:hover,
.uc-mservicios .uc-mservicios__link:focus {
	background: var(--uc-color-brand-50) !important;
	text-decoration: none !important;
}

.uc-mservicios .uc-mservicios__icon {
	flex-shrink: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: var(--uc-color-brand-50);
	color: var(--uc-color-primary);
}

.uc-mservicios .uc-mservicios__icon-svg {
	width: 22px;
	height: 22px;
}

.uc-mservicios .uc-mservicios__icon-svg,
.uc-mservicios .uc-mservicios__icon-svg * {
	stroke: currentColor !important;
}

.uc-mservicios .uc-mservicios__icon-svg[fill]:not([fill="none"]):not([fill="transparent"]),
.uc-mservicios .uc-mservicios__icon-svg [fill]:not([fill="none"]):not([fill="transparent"]) {
	fill: currentColor !important;
}

.uc-mservicios .uc-mservicios__label {
	font-family: var(--urra-font-heading, inherit) !important;
	font-size: 16px !important;
	font-weight: 600 !important;
	line-height: 1.3 !important;
	color: inherit !important;
}

/* Acordeón menú principal mobile ------------------------------- */
.uc-maccordion,
.uc-maccordion * {
	box-sizing: border-box;
}

.uc-maccordion {
	--uc-acc-anim-duration: 360ms;
	--uc-acc-anim-ease: cubic-bezier(0.4, 0, 0.2, 1);
	font-family: var(--urra-font-body, system-ui, sans-serif);
	color: var(--uc-color-text);
}

.uc-maccordion .uc-maccordion__list,
.uc-maccordion .uc-maccordion__panel {
	list-style: none !important;
	list-style-image: none !important;
	margin: 0 !important;
	padding: 0 !important;
	background: none !important;
}

.uc-maccordion .uc-maccordion__item,
.uc-maccordion .uc-maccordion__child {
	margin: 0 !important;
	padding: 0 !important;
	background: none !important;
	list-style: none !important;
}

.uc-maccordion .uc-maccordion__item::before,
.uc-maccordion .uc-maccordion__item::marker,
.uc-maccordion .uc-maccordion__child::before,
.uc-maccordion .uc-maccordion__child::marker {
	content: none !important;
	display: none !important;
}

.uc-maccordion .uc-maccordion__item + .uc-maccordion__item {
	border-top: 1px solid var(--uc-color-border);
}

.uc-maccordion .uc-maccordion__heading {
	margin: 0 !important;
	padding: 0 !important;
	background: none !important;
	border: 0 !important;
	box-shadow: none !important;
	font-size: 18px !important;
	font-weight: 600 !important;
	line-height: 1.3 !important;
	color: inherit !important;
}

.uc-maccordion .uc-maccordion__toggle {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 12px !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 18px 16px !important;
	min-height: 56px;
	background: transparent !important;
	background-color: transparent !important;
	background-image: none !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	font-family: var(--urra-font-heading, inherit) !important;
	font-size: 18px !important;
	font-weight: 600 !important;
	line-height: 1.3 !important;
	color: var(--uc-color-primary) !important;
	text-align: left !important;
	text-decoration: none !important;
	text-transform: none !important;
	letter-spacing: normal !important;
	cursor: pointer;
	appearance: none !important;
	-webkit-appearance: none !important;
	transition: background-color var(--uc-acc-anim-duration) var(--uc-acc-anim-ease);
}

.uc-maccordion .uc-maccordion__toggle:hover,
.uc-maccordion .uc-maccordion__toggle:focus {
	background: var(--e-global-color-neutral-100, #F3F4F6) !important;
	background-color: var(--e-global-color-neutral-100, #F3F4F6) !important;
	box-shadow: none !important;
	color: var(--uc-color-primary) !important;
	text-decoration: none !important;
}

.uc-maccordion .uc-maccordion__item.is-open .uc-maccordion__toggle,
.uc-maccordion .uc-maccordion__toggle[aria-expanded="true"] {
	background: var(--e-global-color-neutral-100, #F3F4F6) !important;
	background-color: var(--e-global-color-neutral-100, #F3F4F6) !important;
}

.uc-maccordion .uc-maccordion__label {
	flex: 1;
	min-width: 0;
}

.uc-maccordion .uc-maccordion__chevron {
	flex-shrink: 0;
	color: var(--uc-color-text) !important;
	transition: transform var(--uc-acc-anim-duration) var(--uc-acc-anim-ease);
}

.uc-maccordion .uc-maccordion__chevron,
.uc-maccordion .uc-maccordion__chevron * {
	stroke: currentColor !important;
}

.uc-maccordion .uc-maccordion__item.is-open .uc-maccordion__chevron,
.uc-maccordion .uc-maccordion__toggle[aria-expanded="true"] .uc-maccordion__chevron {
	transform: rotate(180deg);
}

.uc-maccordion .uc-maccordion__panel {
	display: block;
	height: 0;
	overflow: hidden;
	transition: height var(--uc-acc-anim-duration) var(--uc-acc-anim-ease);
	will-change: height;
}

.uc-maccordion .uc-maccordion__panel[hidden] {
	display: none;
}

.uc-maccordion .uc-maccordion__item.is-open > .uc-maccordion__panel:not([style*="height"]) {
	height: auto;
}

.uc-maccordion .uc-maccordion__link,
.uc-maccordion .uc-maccordion__leaf-link {
	display: flex !important;
	align-items: center !important;
	width: 100% !important;
	margin: 0 !important;
	background: transparent !important;
	background-color: transparent !important;
	background-image: none !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	text-decoration: none !important;
	text-transform: none !important;
	letter-spacing: normal !important;
	font-family: inherit !important;
}

.uc-maccordion .uc-maccordion__link {
	padding: 12px 16px !important;
	min-height: 44px;
	font-size: 16px !important;
	font-weight: 400 !important;
	line-height: 1.4 !important;
	color: var(--uc-color-text) !important;
	transition: background-color 0.15s ease, color 0.15s ease;
}

.uc-maccordion .uc-maccordion__link:hover,
.uc-maccordion .uc-maccordion__link:focus {
	background: var(--e-global-color-neutral-100, #F3F4F6) !important;
	background-color: var(--e-global-color-neutral-100, #F3F4F6) !important;
	color: var(--uc-color-primary) !important;
	text-decoration: none !important;
}

.uc-maccordion .uc-maccordion__heading--leaf {
	padding: 0 !important;
}

.uc-maccordion .uc-maccordion__leaf-link {
	padding: 18px 16px !important;
	min-height: 56px;
	font-family: var(--urra-font-heading, inherit) !important;
	font-size: 18px !important;
	font-weight: 600 !important;
	line-height: 1.3 !important;
	color: var(--uc-color-primary) !important;
	transition: background-color 0.15s ease;
}

.uc-maccordion .uc-maccordion__leaf-link:hover,
.uc-maccordion .uc-maccordion__leaf-link:focus {
	background: var(--e-global-color-neutral-100, #F3F4F6) !important;
	background-color: var(--e-global-color-neutral-100, #F3F4F6) !important;
	color: var(--uc-color-primary) !important;
	text-decoration: none !important;
}

/* Reduced motion — respeta prefs del usuario ------------------- */
@media (prefers-reduced-motion: reduce) {
	.uc-menu-wrap *,
	.uc-mservicios *,
	.uc-maccordion * {
		transition: none !important;
		animation: none !important;
	}
}
