/* Navegación compartida: se carga después de los estilos propios de cada página. */
.top{position:relative;background:#1E3A5F;z-index:40}
.top>.wrap{display:flex;align-items:center;justify-content:space-between;min-height:64px;height:auto;gap:16px;max-width:1180px;padding:10px 16px;margin:0 auto;box-sizing:border-box}
.top .brand{display:flex;align-items:center;gap:10px;text-decoration:none;background:#fff;border-radius:6px;padding:5px 10px;flex-shrink:0}
.top .brand img{display:block;width:62px;height:48px}
.top nav{display:flex;align-items:center;gap:20px;font-size:14px}
.top nav a{color:#D9D9D9;text-decoration:none;white-space:nowrap}
.top nav a:hover,.top nav a[aria-current=page],.top nav a.on{color:#F2D15C}
.top .grupo{position:relative}.top summary{color:#D9D9D9;cursor:pointer;white-space:nowrap;list-style:none}
.top summary::-webkit-details-marker{display:none}.top summary::after{content:' ▾'}.top summary.on{color:#F2D15C}
.top .sub{position:absolute;right:0;top:calc(100% + 12px);background:#fff;border-radius:10px;box-shadow:0 12px 30px #0f244040;padding:8px;min-width:200px;z-index:41}
.top .sub a{display:block;color:#1E3A5F;padding:8px 12px;border-radius:6px}
.top .sub a:hover,.top .sub a[aria-current=page]{background:#F5F5F5;color:#1E3A5F}
.top nav a.part{background:#F2D15C;color:#1E3A5F;font-weight:700;padding:8px 14px;border-radius:6px}
.top nav a.part:hover,.top nav a.part[aria-current=page]{background:#D4A62A;color:#1E3A5F}
.top .sus-abrir{font:inherit;color:#D9D9D9;background:none;border:0;cursor:pointer;padding:0}.top .sus-abrir:hover{color:#F2D15C}
.js .top .sus-abrir[hidden]{display:inline-block!important}
.top .menu-btn{display:none;font:600 14px 'Inter',system-ui,sans-serif;color:#fff;background:none;border:1px solid #ffffff59;border-radius:6px;padding:7px 12px;cursor:pointer}
.top [hidden]{display:none!important}.top :focus-visible{outline:2px solid #D4A62A;outline-offset:4px}
.pie-enlaces{display:flex;gap:16px;align-items:center;flex-wrap:wrap}
@media(max-width:1050px){
  .top>.wrap{flex-wrap:wrap}.top nav{width:100%;flex-direction:column;align-items:stretch;gap:0;padding:0 0 6px}
  .js .top .menu-btn{display:block!important}   /* la clase js se pone en <head>: el menú nace cerrado y no salta al cargar */
  .js .top:not(.abierto) nav{display:none}
  .top.nav-ready .menu-btn:not([hidden]){display:block}
  .top.nav-ready:not(.abierto) nav{display:none}
  .top nav>a,.top summary,.top nav .sus-abrir{padding:12px 0;border-bottom:1px solid #ffffff1a;text-align:left}
  .top .sub{position:static;background:none;box-shadow:none;padding:0 0 0 12px}
  .top .sub a{color:#D9D9D9}.top .sub a:hover,.top .sub a[aria-current=page]{color:#F2D15C;background:none}
  .top nav a.part{margin-top:12px;text-align:center}
}

footer{padding:40px 0 56px;color:#D9D9D9;font:14px/1.65 'Inter',system-ui,sans-serif;background:#1E3A5F}
footer>.wrap{max-width:1180px;padding:0 16px;margin:0 auto;display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap}
footer b{font:800 17px/1.4 'Inter',system-ui,sans-serif;color:#F2D15C;display:block;margin-bottom:4px}
footer a{color:#D9D9D9;text-decoration:none}footer a:hover{color:#F2D15C}
/* aviso de proyecto en desarrollo: va en el HTML para no mover la página al cargar; el script solo lo cierra */
.aviso-dev{background:#1E3A5F;border-top:1px solid rgba(255,255,255,.08);color:#A9BACC;font:13px/1.5 'Inter','Inter Fallback',system-ui,sans-serif}
.aviso-dev .in{max-width:1180px;margin:0 auto;padding:6px 16px;display:flex;align-items:flex-start;gap:12px}
.aviso-dev p{margin:0;flex:1}
.aviso-dev a,.aviso-dev button.err{color:#D9D9D9;font:inherit;text-decoration:underline;text-underline-offset:2px;background:none;border:0;padding:0;cursor:pointer}
.aviso-dev .x{background:none;border:0;color:#A9BACC;font-size:18px;line-height:1;cursor:pointer;padding:0 4px}
.aviso-dev .largo{display:inline}
.sin-aviso .aviso-dev{display:none}
@media (max-width:640px){.aviso-dev .largo{display:none}}
