.main-navigation { display: flex; justify-content: flex-start; flex: 1 1 auto; min-width: 0; margin-left: 20px; font-family: var(--vit-font-navigation); }
.vit-primary-menu, .vit-primary-menu ul, .vit-mobile-menu, .vit-mobile-menu ul { margin: 0; padding: 0; list-style: none; }
.vit-primary-menu { display: flex; align-items: center; justify-content: flex-start; flex-wrap: nowrap; gap: var(--vit-nav-gap); }
.vit-primary-menu > li { position: relative; }
.vit-primary-menu a {
	display: flex;
	align-items: center;
	min-height: 44px;
	padding: 0 10px;
	border-radius: var(--vit-nav-radius);
	color: var(--vit-nav-link);
	font-size: var(--vit-nav-size);
	font-weight: var(--vit-nav-weight);
	text-transform: var(--vit-nav-transform);
	text-decoration: none;
}
.vit-primary-menu a:visited { color: var(--vit-nav-link); }
.vit-primary-menu svg { color: var(--vit-nav-icon); fill: currentColor; }
.vit-primary-menu a:hover, .vit-primary-menu a:focus-visible { color: var(--vit-nav-hover); background: var(--vit-nav-hover-background); text-decoration: none; }
.vit-primary-menu .current-menu-item > a, .vit-primary-menu .current-menu-ancestor > a, .vit-primary-menu .current_page_item > a, .vit-primary-menu .current_page_ancestor > a { color: var(--vit-nav-active); background: var(--vit-nav-active-background); }
.vit-primary-menu .sub-menu {
	position: absolute;
	top: 100%;
	left: 0;
	z-index: 70;
	min-width: 220px;
	padding: 8px;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	color: var(--vit-submenu-text);
	background: var(--vit-submenu-background);
	border: 1px solid var(--vit-submenu-border);
	border-radius: var(--vit-radius);
	box-shadow: var(--vit-card-shadow);
}
.vit-primary-menu > li > .sub-menu::before { position: absolute; top: -8px; left: 0; width: 100%; height: 8px; content: ""; }
.vit-primary-menu > li.opens-left > .sub-menu { right: 0; left: auto; }
.vit-primary-menu li:not(.vit-mega-menu):hover > .sub-menu, .vit-primary-menu li:focus-within > .sub-menu, .vit-primary-menu li.is-open > .sub-menu { opacity: 1; visibility: visible; pointer-events: auto; }
.vit-primary-menu .sub-menu li { position: relative; }
.vit-primary-menu .sub-menu .sub-menu { top: 0; left: 100%; min-width: 240px; }
.vit-primary-menu .sub-menu .sub-menu::before { position: absolute; top: 0; left: -8px; width: 8px; height: 100%; content: ""; }
.vit-primary-menu .sub-menu li.opens-left > .sub-menu { right: 100%; left: auto; }
.vit-primary-menu .sub-menu li.opens-left > .sub-menu::before { right: -8px; left: auto; }
.vit-primary-menu .sub-menu a { min-height: 36px; color: var(--vit-submenu-text); font-size: max(11px, calc(var(--vit-nav-size) - 1px)); }
.vit-primary-menu .sub-menu a:visited { color: var(--vit-submenu-text); }
.vit-primary-menu .sub-menu .current-menu-item > a, .vit-primary-menu .sub-menu .current-menu-ancestor > a, .vit-primary-menu .sub-menu .current_page_item > a, .vit-primary-menu .sub-menu .current_page_ancestor > a { color: var(--vit-nav-active); background: var(--vit-nav-active-background); }
.vit-primary-menu .sub-menu a:hover, .vit-primary-menu .sub-menu a:focus-visible { color: var(--vit-submenu-hover-text); background: var(--vit-submenu-hover-background); }
.vit-primary-menu > .vit-mega-menu > .sub-menu { left: 50%; display: grid; grid-template-columns: repeat(5, minmax(120px, 1fr)); gap: 8px; width: min(920px, calc(100vw - 32px)); transform: translateX(-50%); }
.vit-primary-menu > .vit-mega-menu.opens-left > .sub-menu { right: 0; left: auto; transform: none; }
.vit-mobile-toggle { display: none; }
.vit-mobile-backdrop { position: fixed; inset: 0; z-index: 80; background: rgba(0, 0, 0, .55); }
.vit-mobile-panel {
	position: fixed;
	inset: 0 0 0 auto;
	z-index: 90;
	width: min(100%, 420px);
	padding: 16px;
	overflow-y: auto;
	overscroll-behavior: contain;
	color: var(--vit-mobile-menu-text);
	background: var(--vit-mobile-menu-background);
	border-inline-start: 1px solid var(--vit-mobile-menu-border);
	transform: translateX(100%);
	visibility: hidden;
	pointer-events: none;
	transition: transform 160ms ease, visibility 0s linear 160ms;
}
.vit-mobile-panel.is-open { transform: translateX(0); visibility: visible; pointer-events: auto; transition-delay: 0s; }
.vit-mobile-panel-header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 14px; }
.vit-mobile-panel .vit-logo, .vit-mobile-panel .vit-logo:visited { color: var(--vit-mobile-menu-text); }
.vit-mobile-panel .vit-icon-button { color: var(--vit-mobile-action-color); }
.vit-mobile-panel .vit-icon-button:hover { color: var(--vit-mobile-action-hover-color); background: var(--vit-mobile-action-hover-background); }
.vit-mobile-panel .vit-icon-button:focus-visible { color: var(--vit-mobile-action-focus-color); }
.vit-mobile-menu li { border-bottom: 1px solid var(--vit-mobile-menu-separator); }
.vit-mobile-menu .menu-item-row { display: flex; align-items: stretch; }
.vit-mobile-menu .menu-item-row > a { flex: 1 1 auto; }
.vit-mobile-menu a, .vit-mobile-subtoggle { display: flex; align-items: center; min-height: 44px; padding: 10px 12px; color: var(--vit-mobile-menu-text); background: transparent; border: 0; text-decoration: none; }
.vit-mobile-menu a:visited { color: var(--vit-mobile-menu-text); }
.vit-mobile-subtoggle { flex: 0 0 44px; justify-content: center; cursor: pointer; }
.vit-mobile-subtoggle { color: var(--vit-mobile-menu-icon); }
.vit-mobile-subtoggle svg { width: 18px; height: 18px; fill: currentColor; transition: transform 140ms ease; }
.vit-mobile-subtoggle[aria-expanded="true"] svg { transform: rotate(180deg); }
.vit-mobile-menu a:hover, .vit-mobile-menu a:focus-visible, .vit-mobile-subtoggle:hover, .vit-mobile-subtoggle:focus-visible { color: var(--vit-mobile-hover-text); background: var(--vit-mobile-hover-background); }
.vit-mobile-menu .current-menu-item > a,
.vit-mobile-menu .current-menu-ancestor > a,
.vit-mobile-menu .current_page_item > a,
.vit-mobile-menu .current_page_ancestor > a,
.vit-mobile-menu .current-menu-item > .menu-item-row > a,
.vit-mobile-menu .current-menu-ancestor > .menu-item-row > a,
.vit-mobile-menu .current_page_item > .menu-item-row > a,
.vit-mobile-menu .current_page_ancestor > .menu-item-row > a { border-inline-start: 1px solid var(--vit-mobile-active-border); color: var(--vit-mobile-active-text); background: var(--vit-mobile-active-background); }
.vit-mobile-menu .current-menu-item > .menu-item-row > .vit-mobile-subtoggle,
.vit-mobile-menu .current-menu-ancestor > .menu-item-row > .vit-mobile-subtoggle,
.vit-mobile-menu .current_page_item > .menu-item-row > .vit-mobile-subtoggle,
.vit-mobile-menu .current_page_ancestor > .menu-item-row > .vit-mobile-subtoggle { border-inline-end: 1px solid var(--vit-mobile-active-border); color: var(--vit-mobile-active-icon); background: var(--vit-mobile-active-background); }
.vit-mobile-menu .sub-menu { display: none; padding-left: 12px; }
.vit-mobile-menu .is-open > .sub-menu { display: block; }

/* Milinmueble Group mega menu */
.mil-mega-featured-card {
	display: flex;
	flex-direction: column;
	gap: 16px;
}
.mil-mega-featured-media {
	background: #f2f4f8;
	border: 1px solid var(--mil-mega-separator, #edf0f4);
	overflow: hidden;
}
.mil-mega-featured-image {
	display: block;
	width: 100%;
	height: auto;
	object-fit: cover;
}
.mil-mega-featured-description {
	color: var(--mil-mega-text, #444b56);
	font-size: .98rem;
	line-height: 1.5;
}
.mil-mega-featured-description p { margin: 0; }
.mil-mega-featured-cta {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	align-self: flex-start;
	text-decoration: none;
}

@media (min-width: 1025px) {
	.site-header .vit-primary-menu > li.vit-mega-menu { position: static; }
	/* No invisible pointer bridge above the panel: it previously acted as
	   an oversized hover target below the navigation. */
	.site-header .vit-primary-menu > li.vit-mega-menu > .sub-menu::before { content: none; }

	.site-header .vit-primary-menu > li.vit-mega-menu > .sub-menu,
	.site-header .vit-primary-menu > li.vit-mega-menu.opens-left > .sub-menu {
		position: absolute;
		left: 0;
		right: 0;
		top: 100%;
		transform: none;
		width: 100%;
		max-width: none;
		max-height: min(74vh, 680px);
		overflow-y: auto;
		margin: 0;
		padding: clamp(24px, 2.7vw, 42px) clamp(28px, 3vw, 48px);
		gap: 28px;
		border: 1px solid var(--mil-mega-separator, #edf0f4);
		border-top: 1px solid var(--mil-mega-separator, #edf0f4);
		border-radius: 0;
		background: var(--mil-mega-background, #fff);
		color: var(--mil-mega-text, #444b56);
		box-shadow: 0 18px 36px rgba(19, 39, 71, .09);
	}
	.site-header .vit-primary-menu > li.vit-mega-menu.mil-mega-has-featured > .sub-menu { grid-template-columns: minmax(250px, 1.1fr) repeat(4, minmax(0, 1fr)); }
	.site-header .vit-primary-menu > li.vit-mega-menu.mil-mega-has-featured.mil-mega-cols-2 > .sub-menu { grid-template-columns: minmax(250px, 1.1fr) repeat(2, minmax(0, 1fr)); }
	.site-header .vit-primary-menu > li.vit-mega-menu.mil-mega-has-featured.mil-mega-cols-3 > .sub-menu { grid-template-columns: minmax(250px, 1.1fr) repeat(3, minmax(0, 1fr)); }
	.site-header .vit-primary-menu > li.vit-mega-menu.mil-mega-has-featured.mil-mega-cols-4 > .sub-menu { grid-template-columns: minmax(250px, 1.1fr) repeat(4, minmax(0, 1fr)); }
	.site-header .vit-primary-menu > li.vit-mega-menu.mil-mega-has-featured.mil-mega-cols-5 > .sub-menu { grid-template-columns: minmax(250px, 1.1fr) repeat(5, minmax(0, 1fr)); }
	.site-header .vit-primary-menu > li.vit-mega-menu:not(.mil-mega-has-featured) > .sub-menu { grid-template-columns: repeat(4, minmax(0, 1fr)); }
	.site-header .vit-primary-menu > li.vit-mega-menu:not(.mil-mega-has-featured).mil-mega-cols-2 > .sub-menu { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.site-header .vit-primary-menu > li.vit-mega-menu:not(.mil-mega-has-featured).mil-mega-cols-3 > .sub-menu { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.site-header .vit-primary-menu > li.vit-mega-menu:not(.mil-mega-has-featured).mil-mega-cols-5 > .sub-menu { grid-template-columns: repeat(5, minmax(0, 1fr)); }
	.site-header .vit-primary-menu > li.vit-mega-menu > .sub-menu > li {
		min-width: 0;
		padding-right: 14px;
	}
	.site-header .vit-primary-menu > li.vit-mega-menu > .sub-menu > li:not(.mil-mega-featured) { border-right: 1px solid var(--mil-mega-separator, #edf0f4); }
	.site-header .vit-primary-menu > li.vit-mega-menu > .sub-menu > li:last-child { border-right: 0; padding-right: 0; }
	.site-header .vit-primary-menu > li.vit-mega-menu > .sub-menu > li.mil-mega-featured {
		padding-right: 18px;
		border-right: 1px solid var(--mil-mega-separator, #edf0f4);
	}
	.site-header .vit-primary-menu > li.vit-mega-menu > .sub-menu > li > a {
		color: var(--mil-mega-heading, #1c468b);
		font-weight: 750;
		font-size: .98rem;
		letter-spacing: .01em;
		padding: 4px 0 12px;
		border-radius: 0;
	}
	.site-header .vit-primary-menu > li.vit-mega-menu > .sub-menu > li > .sub-menu,
	.site-header .vit-primary-menu > li.vit-mega-menu > .sub-menu > li.opens-left > .sub-menu {
		position: static;
		display: block;
		min-width: 0;
		width: 100%;
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
		padding: 0;
		margin: 0;
		border: 0;
		border-radius: 0;
		box-shadow: none;
		transform: none;
		background: transparent;
	}
	.site-header .vit-primary-menu > li.vit-mega-menu .sub-menu .sub-menu::before { content: none; }
	.site-header .vit-primary-menu > li.vit-mega-menu .sub-menu .sub-menu li { border-bottom: 1px solid var(--mil-mega-separator, #edf0f4); }
	.site-header .vit-primary-menu > li.vit-mega-menu .sub-menu .sub-menu li:last-child { border-bottom: none; }
	.site-header .vit-primary-menu > li.vit-mega-menu .sub-menu .sub-menu a {
		color: var(--mil-mega-text, #444b56);
		padding: 11px 0;
		min-height: 40px;
		background: transparent;
		white-space: normal;
		border-radius: 0;
	}
	.site-header .vit-primary-menu > li.vit-mega-menu .sub-menu .sub-menu a:hover,
	.site-header .vit-primary-menu > li.vit-mega-menu .sub-menu .sub-menu a:focus-visible { color: var(--mil-mega-heading, #1c468b); background: var(--mil-mega-hover, #f3f6fa); }
	.site-header .vit-primary-menu > li.vit-mega-menu .mil-mega-featured .mil-mega-featured-media { min-height: 170px; }
	.site-header .vit-primary-menu > li.vit-mega-menu .mil-mega-featured .mil-mega-featured-image { min-height: 170px; max-height: 280px; object-fit: cover; }
}

@media (max-width: 1024px) {
	.vit-mobile-panel { background: var(--vit-mobile-menu-background); color: var(--vit-mobile-menu-text); border-color: var(--vit-mobile-menu-border); }
	.vit-mobile-panel .vit-mobile-menu li { border-color: var(--vit-mobile-menu-separator); }
	.vit-mobile-panel .vit-mobile-menu a,
	.vit-mobile-panel .vit-mobile-subtoggle { color: var(--vit-mobile-menu-text); }
	.vit-mobile-panel .vit-mobile-menu a:hover,
	.vit-mobile-panel .vit-mobile-menu a:focus-visible,
	.vit-mobile-panel .vit-mobile-subtoggle:hover,
	.vit-mobile-panel .vit-mobile-subtoggle:focus-visible { color: var(--vit-mobile-hover-text); background: var(--vit-mobile-hover-background); }
	.vit-mobile-panel .vit-mobile-menu .sub-menu { padding-left: 14px; border-left: 2px solid var(--vit-mobile-menu-separator); }
	.vit-mobile-menu .mil-mobile-mega-featured {
		padding: 14px 12px 18px;
		margin: 6px 0 10px;
		border: 1px solid var(--vit-mobile-menu-separator);
		background: color-mix(in srgb, var(--vit-mobile-menu-background) 92%, #f3f6fa 8%);
	}
	.vit-mobile-menu .mil-mobile-mega-featured .mil-mega-featured-card { gap: 14px; }
	.vit-mobile-menu .mil-mobile-mega-featured .mil-mega-featured-media { background: transparent; }
	.vit-mobile-menu .mil-mobile-mega-featured .mil-mega-featured-image { max-height: 280px; object-fit: cover; }
	.vit-mobile-menu .mil-mobile-mega-featured .mil-mega-featured-description { color: var(--vit-mobile-menu-text); font-size: 1rem; }
	.vit-mobile-menu .mil-mobile-mega-featured .mil-mega-featured-cta { align-self: stretch; text-align: center; }
	.vit-mobile-menu .mil-mobile-mega-section > .menu-item-row > a { font-weight: 700; }
}
@media (prefers-reduced-motion: reduce) { .vit-mobile-panel { transition: none; } }
