/* MENÚS EDITABLES. Familia y tamaño de la navegación Bootstrap de la referencia.
   theme.js mide cada lista: cuando no cabe, cambia a desplegable; nunca a dos filas. */
.navigation-bar,.secondary-navigation-bar{--navigation-font:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif;--search-width:240px;font-family:var(--navigation-font);font-size:16px;line-height:1.5}
.navigation-bar{border:0;background:#1b396a;color:#fff}.secondary-navigation-bar{background:#fff;color:#222;border:0}
.navigation-bar .navigation-inner,.secondary-navigation-bar .navigation-inner{max-width:1680px;width:100%;display:flex;align-items:center;flex-wrap:wrap;gap:0 24px;padding-top:7px;padding-bottom:7px}
.navigation-search{flex:1 1 180px;min-width:0;max-width:350px}.campus-search-form{display:flex;width:100%;align-items:center;border:1px solid #d9dfe6;border-radius:6px;overflow:hidden;background:#f8fafc}
.campus-search-form input{width:100%;min-width:0;border:0;outline:none;background:transparent;color:#1b396a;font:400 15px/1.5 var(--navigation-font,"Segoe UI",Arial,sans-serif);padding:8px 11px;height:38px}
.campus-search-form:focus-within{outline:2px solid #a78649;outline-offset:2px}.campus-search-form button{display:grid;place-items:center;align-self:stretch;width:40px;flex:0 0 40px;padding:0;border:0;background:#1b396a;color:#fff;cursor:pointer}.campus-search-form button:hover{background:#11284d}
.navigation-bar .menu-toggle,.secondary-navigation-bar .menu-toggle{display:flex;align-items:center;gap:10px;cursor:pointer;font:500 16px/1.5 var(--navigation-font);border:0;border-radius:5px;padding:8px 12px;background:transparent;color:inherit;min-height:40px}
.secondary-navigation-bar .menu-toggle{margin-left:auto;color:#1b396a}.navigation-bar .menu-toggle:hover{background:#ffffff18}.secondary-navigation-bar .menu-toggle:hover{background:#eef2f7}
.navigation-bar .institutional-navigation,.secondary-navigation-bar .institutional-navigation{display:none;flex:1 0 100%;min-width:0;width:100%;padding-top:7px;padding-bottom:5px}
.navigation-bar .institutional-navigation.is-open,.secondary-navigation-bar .institutional-navigation.is-open{display:block}
.institutional-navigation .menu{display:block;margin:0;padding:0;list-style:none}
.institutional-navigation .menu>li>a,.institutional-navigation .menu>li>.submenu-toggle{font-family:var(--navigation-font);font-size:16px;line-height:1.5;min-height:44px;padding:10px 12px;font-weight:700;border-radius:5px;color:#fff;white-space:normal}
.institutional-navigation .submenu-toggle{font:inherit;text-align:left;background:transparent;border:0;cursor:pointer;color:inherit;display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%}
.institutional-navigation .submenu-toggle::after{content:'';display:block;width:7px;height:7px;flex:0 0 7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);margin:-4px 3px 0 6px;transition:transform .18s ease}
.institutional-navigation .submenu-toggle[aria-expanded=true]::after{transform:rotate(225deg);margin-top:3px}
.institutional-navigation .menu-item-has-children>a::after{content:none}
.institutional-navigation .menu li:has(>.submenu-toggle-arrow){position:relative}.institutional-navigation .menu li:has(>.submenu-toggle-arrow)>a{padding-right:46px}
.institutional-navigation .menu li>.submenu-toggle-arrow{position:absolute;right:0;top:0;width:38px;min-height:44px;padding:8px;justify-content:center}
.institutional-navigation .sub-menu{position:static;min-width:0;max-width:none;padding:4px 6px 4px 14px;margin:2px 0 6px;list-style:none;border:0!important;border-radius:7px;background:#ffffff09;color:#fff;box-shadow:none;display:none}
.institutional-navigation .sub-menu li{border:0!important;margin:0;padding:0}
.institutional-navigation .sub-menu a,.institutional-navigation .sub-menu .submenu-toggle{display:block;border:0!important;border-radius:5px;padding:10px 12px;font-family:var(--navigation-font);font-size:15px;font-weight:400;line-height:1.5;white-space:normal;color:inherit;margin:0}
.institutional-navigation .sub-menu .submenu-toggle{display:flex}
.institutional-navigation .sub-menu a:hover,.institutional-navigation .sub-menu a:focus-visible,.institutional-navigation .sub-menu .submenu-toggle:hover{color:#1b396a;background:#edf2f8}
.institutional-navigation .menu>li:hover>a,.institutional-navigation .menu>li:hover>.submenu-toggle,.institutional-navigation .menu>li.is-submenu-open>.submenu-toggle{background:#ffffff18}
.secondary-navigation .menu>li>a,.secondary-navigation .menu>li>.submenu-toggle{color:#222;font-weight:400}
.secondary-navigation .menu>li:hover>a,.secondary-navigation .menu>li:hover>.submenu-toggle,.secondary-navigation .menu>li.is-submenu-open>.submenu-toggle{color:#1b396a;background:#eef2f7}
.secondary-navigation .sub-menu{background:#f6f8fb;color:#222}
.institutional-navigation .menu li.is-submenu-open>.sub-menu{display:block}
.institutional-navigation.navigation-ready .menu li:not(.is-submenu-open)>.sub-menu{display:none}
/* Vista horizontal: solo se activa cuando la medición confirma espacio suficiente. */
.navigation-bar.is-wide .navigation-inner,.secondary-navigation-bar.is-wide .navigation-inner{flex-wrap:nowrap}
.navigation-bar.is-wide .menu-toggle,.secondary-navigation-bar.is-wide .menu-toggle{display:none}
.navigation-bar.is-wide .institutional-navigation,.secondary-navigation-bar.is-wide .institutional-navigation{display:block;flex:1 1 auto;width:auto;padding:0}
.secondary-navigation-bar.is-wide .navigation-search{flex:0 0 var(--search-width);max-width:none}
.secondary-navigation-bar.is-wide .secondary-navigation{margin-left:auto}
.is-wide .institutional-navigation .menu{display:flex;flex-wrap:nowrap;align-items:center}
.secondary-navigation-bar.is-wide .menu{justify-content:flex-end}
.is-wide .institutional-navigation .menu>li{flex:0 0 auto}.is-wide .institutional-navigation .menu>li>a,.is-wide .institutional-navigation .menu>li>.submenu-toggle{white-space:nowrap}
.is-wide .institutional-navigation .sub-menu{position:absolute;top:100%;left:0;min-width:280px;max-width:360px;width:max-content;padding:6px;margin:4px 0 0;background:#1b396a;box-shadow:0 10px 28px #10284c2b;z-index:60}
.is-wide .secondary-navigation .sub-menu{background:#fff;color:#222}
.is-wide .institutional-navigation .sub-menu::before{content:'';position:absolute;left:0;right:0;top:-5px;height:5px}
.is-wide .institutional-navigation .menu>li:nth-last-child(-n+3)>.sub-menu{left:auto;right:0}
.is-wide .institutional-navigation .sub-menu .sub-menu{left:100%;right:auto;top:0;margin:0 0 0 4px}
/* Cada submenú anidado se ancla a su propia opción, no a toda la lista.
   En el menú blanco abre a la izquierda para conservar espacio junto al borde derecho. */
.is-wide .institutional-navigation .sub-menu>li{position:relative}
.secondary-navigation-bar.is-wide .secondary-navigation .sub-menu .sub-menu{left:auto;right:100%;top:0;margin:0 4px 0 0}
.secondary-navigation-bar.is-wide .secondary-navigation .sub-menu .sub-menu::before{top:0;bottom:0;left:auto;right:-5px;width:5px;height:auto}
.secondary-navigation-bar.is-wide .secondary-navigation .sub-menu .submenu-toggle::after{transform:rotate(135deg);margin-top:0}
/* En vista compacta, los subniveles ocupan su lugar y empujan las opciones siguientes. */
.secondary-navigation-bar:not(.is-wide) .secondary-navigation .sub-menu{position:static;inset:auto;width:auto;max-width:none;float:none;transform:none}
.utilities-menu{list-style:none;margin:0;padding:0;display:flex;gap:14px}.utilities-menu a{font-size:12px;font-weight:600}
/* Copia invisible e inerte usada para medir el ancho real de los textos editables. */
.institutional-menus .secondary-navigation-bar .navigation-inner{max-width:none;justify-content:space-between}
.secondary-navigation-bar .navigation-search{margin-right:auto}
.secondary-navigation-bar.is-wide .secondary-navigation{flex:0 1 auto;margin-left:auto}
.navigation-bar .campus-home-icon{display:block;width:22px;height:22px;flex:0 0 22px}
.navigation-bar .menu>li>a:has(.campus-home-icon){display:flex;align-items:center;justify-content:center;min-width:44px;padding-left:11px;padding-right:11px}
.navigation-measure{position:fixed!important;left:-100000px!important;top:0!important;visibility:hidden!important;width:max-content!important;pointer-events:none!important}
.navigation-measure .institutional-navigation{display:block!important;width:max-content!important;padding:0!important}
.navigation-measure .menu{display:flex!important;flex-wrap:nowrap!important;width:max-content!important}
.navigation-measure .menu>li{flex:0 0 auto!important}.navigation-measure .menu>li>a,.navigation-measure .menu>li>.submenu-toggle{white-space:nowrap!important}
@media(max-width:760px){.navigation-bar .navigation-inner,.secondary-navigation-bar .navigation-inner{padding-left:20px;padding-right:20px;gap:0 10px}.navigation-search{max-width:none}.utilities-menu{justify-content:flex-end;flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){.institutional-navigation .submenu-toggle::after{transition:none}}
